(0) Obligation:

Clauses:

add(b, b, b).
add(X, b, X) :- binaryZ(X).
add(b, Y, Y) :- binaryZ(Y).
add(X, Y, Z) :- addz(X, Y, Z).
addx(one(X), b, one(X)) :- binary(X).
addx(zero(X), b, zero(X)) :- binaryZ(X).
addx(X, Y, Z) :- addz(X, Y, Z).
addy(b, one(Y), one(Y)) :- binary(Y).
addy(b, zero(Y), zero(Y)) :- binaryZ(Y).
addy(X, Y, Z) :- addz(X, Y, Z).
addz(zero(X), zero(Y), zero(Z)) :- addz(X, Y, Z).
addz(zero(X), one(Y), one(Z)) :- addx(X, Y, Z).
addz(one(X), zero(Y), one(Z)) :- addy(X, Y, Z).
addz(one(X), one(Y), zero(Z)) :- addc(X, Y, Z).
addc(b, b, one(b)).
addc(X, b, Z) :- succZ(X, Z).
addc(b, Y, Z) :- succZ(Y, Z).
addc(X, Y, Z) :- addC(X, Y, Z).
addX(zero(X), b, one(X)) :- binaryZ(X).
addX(one(X), b, zero(Z)) :- succ(X, Z).
addX(X, Y, Z) :- addC(X, Y, Z).
addY(b, zero(Y), one(Y)) :- binaryZ(Y).
addY(b, one(Y), zero(Z)) :- succ(Y, Z).
addY(X, Y, Z) :- addC(X, Y, Z).
addC(zero(X), zero(Y), one(Z)) :- addz(X, Y, Z).
addC(zero(X), one(Y), zero(Z)) :- addX(X, Y, Z).
addC(one(X), zero(Y), zero(Z)) :- addY(X, Y, Z).
addC(one(X), one(Y), one(Z)) :- addc(X, Y, Z).
binary(b).
binary(zero(X)) :- binaryZ(X).
binary(one(X)) :- binary(X).
binaryZ(zero(X)) :- binaryZ(X).
binaryZ(one(X)) :- binary(X).
succ(b, one(b)).
succ(zero(X), one(X)) :- binaryZ(X).
succ(one(X), zero(Z)) :- succ(X, Z).
succZ(zero(X), one(X)) :- binaryZ(X).
succZ(one(X), zero(Z)) :- succ(X, Z).
times(one(b), X, X).
times(zero(R), S, zero(RS)) :- times(R, S, RS).
times(one(R), S, RSS) :- ','(times(R, S, RS), add(S, zero(RS), RSS)).

Query: add(g,g,a)

(1) PrologToPrologProblemTransformerProof (SOUND transformation)

Built Prolog problem from termination graph ICLP10.

(2) Obligation:

Clauses:

binaryZA(zero(T29)) :- binaryZA(T29).
binaryZA(one(T33)) :- binaryB(T33).
binaryB(b).
binaryB(zero(T38)) :- binaryZA(T38).
binaryB(one(T42)) :- binaryB(T42).
addzC(zero(T121), zero(T122), zero(T124)) :- addzC(T121, T122, T124).
addzC(zero(T140), one(T141), one(T143)) :- addxD(T140, T141, T143).
addzC(one(T185), zero(T186), one(T188)) :- addyE(T185, T186, T188).
addzC(one(T224), one(T225), zero(T227)) :- addcF(T224, T225, T227).
succG(b, one(b)).
succG(zero(T257), one(T257)) :- binaryZA(T257).
succG(one(T263), zero(T265)) :- succG(T263, T265).
succZH(zero(T244), one(T244)) :- binaryZA(T244).
succZH(one(T250), zero(T252)) :- succG(T250, T252).
addCI(zero(T307), zero(T308), one(T310)) :- addzC(T307, T308, T310).
addCI(zero(zero(T335)), one(b), zero(one(T335))) :- binaryZA(T335).
addCI(zero(one(T345)), one(b), zero(zero(T347))) :- succG(T345, T347).
addCI(zero(T358), one(T359), zero(T361)) :- addCI(T358, T359, T361).
addCI(one(b), zero(zero(T386)), zero(one(T386))) :- binaryZA(T386).
addCI(one(b), zero(one(T396)), zero(zero(T398))) :- succG(T396, T398).
addCI(one(T409), zero(T410), zero(T412)) :- addCI(T409, T410, T412).
addCI(one(T422), one(T423), one(T425)) :- addcF(T422, T423, T425).
addcF(b, b, one(b)).
addcF(T236, b, T238) :- succZH(T236, T238).
addcF(b, T274, T276) :- succZH(T274, T276).
addcF(T288, T289, T291) :- addCI(T288, T289, T291).
addxD(one(T149), b, one(T149)) :- binaryB(T149).
addxD(zero(T154), b, zero(T154)) :- binaryZA(T154).
addxD(T166, T167, T169) :- addzC(T166, T167, T169).
addyE(b, one(T194), one(T194)) :- binaryB(T194).
addyE(b, zero(T199), zero(T199)) :- binaryZA(T199).
addyE(T211, T212, T214) :- addzC(T211, T212, T214).
addJ(b, b, b).
addJ(zero(T23), b, zero(T23)) :- binaryZA(T23).
addJ(one(T47), b, one(T47)) :- binaryB(T47).
addJ(b, zero(T68), zero(T68)) :- binaryZA(T68).
addJ(b, one(T74), one(T74)) :- binaryB(T74).
addJ(zero(T102), zero(T103), zero(T105)) :- addzC(T102, T103, T105).
addJ(zero(T438), one(T439), one(T441)) :- addxD(T438, T439, T441).
addJ(one(T455), zero(T456), one(T458)) :- addyE(T455, T456, T458).
addJ(one(T466), one(T467), zero(T469)) :- addcF(T466, T467, T469).

Query: addJ(g,g,a)

(3) PrologToPiTRSProof (SOUND transformation)

We use the technique of [TOCL09]. With regard to the inferred argument filtering the predicates were used in the following modes:
addJ_in: (b,b,f)
binaryZA_in: (b)
binaryB_in: (b)
addzC_in: (b,b,f)
addxD_in: (b,b,f)
addyE_in: (b,b,f)
addcF_in: (b,b,f)
succZH_in: (b,f)
succG_in: (b,f)
addCI_in: (b,b,f)
Transforming Prolog into the following Term Rewriting System:
Pi-finite rewrite system:
The TRS R consists of the following rules:

addJ_in_gga(b, b, b) → addJ_out_gga(b, b, b)
addJ_in_gga(zero(T23), b, zero(T23)) → U30_gga(T23, binaryZA_in_g(T23))
binaryZA_in_g(zero(T29)) → U1_g(T29, binaryZA_in_g(T29))
binaryZA_in_g(one(T33)) → U2_g(T33, binaryB_in_g(T33))
binaryB_in_g(b) → binaryB_out_g(b)
binaryB_in_g(zero(T38)) → U3_g(T38, binaryZA_in_g(T38))
U3_g(T38, binaryZA_out_g(T38)) → binaryB_out_g(zero(T38))
binaryB_in_g(one(T42)) → U4_g(T42, binaryB_in_g(T42))
U4_g(T42, binaryB_out_g(T42)) → binaryB_out_g(one(T42))
U2_g(T33, binaryB_out_g(T33)) → binaryZA_out_g(one(T33))
U1_g(T29, binaryZA_out_g(T29)) → binaryZA_out_g(zero(T29))
U30_gga(T23, binaryZA_out_g(T23)) → addJ_out_gga(zero(T23), b, zero(T23))
addJ_in_gga(one(T47), b, one(T47)) → U31_gga(T47, binaryB_in_g(T47))
U31_gga(T47, binaryB_out_g(T47)) → addJ_out_gga(one(T47), b, one(T47))
addJ_in_gga(b, zero(T68), zero(T68)) → U32_gga(T68, binaryZA_in_g(T68))
U32_gga(T68, binaryZA_out_g(T68)) → addJ_out_gga(b, zero(T68), zero(T68))
addJ_in_gga(b, one(T74), one(T74)) → U33_gga(T74, binaryB_in_g(T74))
U33_gga(T74, binaryB_out_g(T74)) → addJ_out_gga(b, one(T74), one(T74))
addJ_in_gga(zero(T102), zero(T103), zero(T105)) → U34_gga(T102, T103, T105, addzC_in_gga(T102, T103, T105))
addzC_in_gga(zero(T121), zero(T122), zero(T124)) → U5_gga(T121, T122, T124, addzC_in_gga(T121, T122, T124))
addzC_in_gga(zero(T140), one(T141), one(T143)) → U6_gga(T140, T141, T143, addxD_in_gga(T140, T141, T143))
addxD_in_gga(one(T149), b, one(T149)) → U24_gga(T149, binaryB_in_g(T149))
U24_gga(T149, binaryB_out_g(T149)) → addxD_out_gga(one(T149), b, one(T149))
addxD_in_gga(zero(T154), b, zero(T154)) → U25_gga(T154, binaryZA_in_g(T154))
U25_gga(T154, binaryZA_out_g(T154)) → addxD_out_gga(zero(T154), b, zero(T154))
addxD_in_gga(T166, T167, T169) → U26_gga(T166, T167, T169, addzC_in_gga(T166, T167, T169))
addzC_in_gga(one(T185), zero(T186), one(T188)) → U7_gga(T185, T186, T188, addyE_in_gga(T185, T186, T188))
addyE_in_gga(b, one(T194), one(T194)) → U27_gga(T194, binaryB_in_g(T194))
U27_gga(T194, binaryB_out_g(T194)) → addyE_out_gga(b, one(T194), one(T194))
addyE_in_gga(b, zero(T199), zero(T199)) → U28_gga(T199, binaryZA_in_g(T199))
U28_gga(T199, binaryZA_out_g(T199)) → addyE_out_gga(b, zero(T199), zero(T199))
addyE_in_gga(T211, T212, T214) → U29_gga(T211, T212, T214, addzC_in_gga(T211, T212, T214))
addzC_in_gga(one(T224), one(T225), zero(T227)) → U8_gga(T224, T225, T227, addcF_in_gga(T224, T225, T227))
addcF_in_gga(b, b, one(b)) → addcF_out_gga(b, b, one(b))
addcF_in_gga(T236, b, T238) → U21_gga(T236, T238, succZH_in_ga(T236, T238))
succZH_in_ga(zero(T244), one(T244)) → U11_ga(T244, binaryZA_in_g(T244))
U11_ga(T244, binaryZA_out_g(T244)) → succZH_out_ga(zero(T244), one(T244))
succZH_in_ga(one(T250), zero(T252)) → U12_ga(T250, T252, succG_in_ga(T250, T252))
succG_in_ga(b, one(b)) → succG_out_ga(b, one(b))
succG_in_ga(zero(T257), one(T257)) → U9_ga(T257, binaryZA_in_g(T257))
U9_ga(T257, binaryZA_out_g(T257)) → succG_out_ga(zero(T257), one(T257))
succG_in_ga(one(T263), zero(T265)) → U10_ga(T263, T265, succG_in_ga(T263, T265))
U10_ga(T263, T265, succG_out_ga(T263, T265)) → succG_out_ga(one(T263), zero(T265))
U12_ga(T250, T252, succG_out_ga(T250, T252)) → succZH_out_ga(one(T250), zero(T252))
U21_gga(T236, T238, succZH_out_ga(T236, T238)) → addcF_out_gga(T236, b, T238)
addcF_in_gga(b, T274, T276) → U22_gga(T274, T276, succZH_in_ga(T274, T276))
U22_gga(T274, T276, succZH_out_ga(T274, T276)) → addcF_out_gga(b, T274, T276)
addcF_in_gga(T288, T289, T291) → U23_gga(T288, T289, T291, addCI_in_gga(T288, T289, T291))
addCI_in_gga(zero(T307), zero(T308), one(T310)) → U13_gga(T307, T308, T310, addzC_in_gga(T307, T308, T310))
U13_gga(T307, T308, T310, addzC_out_gga(T307, T308, T310)) → addCI_out_gga(zero(T307), zero(T308), one(T310))
addCI_in_gga(zero(zero(T335)), one(b), zero(one(T335))) → U14_gga(T335, binaryZA_in_g(T335))
U14_gga(T335, binaryZA_out_g(T335)) → addCI_out_gga(zero(zero(T335)), one(b), zero(one(T335)))
addCI_in_gga(zero(one(T345)), one(b), zero(zero(T347))) → U15_gga(T345, T347, succG_in_ga(T345, T347))
U15_gga(T345, T347, succG_out_ga(T345, T347)) → addCI_out_gga(zero(one(T345)), one(b), zero(zero(T347)))
addCI_in_gga(zero(T358), one(T359), zero(T361)) → U16_gga(T358, T359, T361, addCI_in_gga(T358, T359, T361))
addCI_in_gga(one(b), zero(zero(T386)), zero(one(T386))) → U17_gga(T386, binaryZA_in_g(T386))
U17_gga(T386, binaryZA_out_g(T386)) → addCI_out_gga(one(b), zero(zero(T386)), zero(one(T386)))
addCI_in_gga(one(b), zero(one(T396)), zero(zero(T398))) → U18_gga(T396, T398, succG_in_ga(T396, T398))
U18_gga(T396, T398, succG_out_ga(T396, T398)) → addCI_out_gga(one(b), zero(one(T396)), zero(zero(T398)))
addCI_in_gga(one(T409), zero(T410), zero(T412)) → U19_gga(T409, T410, T412, addCI_in_gga(T409, T410, T412))
addCI_in_gga(one(T422), one(T423), one(T425)) → U20_gga(T422, T423, T425, addcF_in_gga(T422, T423, T425))
U20_gga(T422, T423, T425, addcF_out_gga(T422, T423, T425)) → addCI_out_gga(one(T422), one(T423), one(T425))
U19_gga(T409, T410, T412, addCI_out_gga(T409, T410, T412)) → addCI_out_gga(one(T409), zero(T410), zero(T412))
U16_gga(T358, T359, T361, addCI_out_gga(T358, T359, T361)) → addCI_out_gga(zero(T358), one(T359), zero(T361))
U23_gga(T288, T289, T291, addCI_out_gga(T288, T289, T291)) → addcF_out_gga(T288, T289, T291)
U8_gga(T224, T225, T227, addcF_out_gga(T224, T225, T227)) → addzC_out_gga(one(T224), one(T225), zero(T227))
U29_gga(T211, T212, T214, addzC_out_gga(T211, T212, T214)) → addyE_out_gga(T211, T212, T214)
U7_gga(T185, T186, T188, addyE_out_gga(T185, T186, T188)) → addzC_out_gga(one(T185), zero(T186), one(T188))
U26_gga(T166, T167, T169, addzC_out_gga(T166, T167, T169)) → addxD_out_gga(T166, T167, T169)
U6_gga(T140, T141, T143, addxD_out_gga(T140, T141, T143)) → addzC_out_gga(zero(T140), one(T141), one(T143))
U5_gga(T121, T122, T124, addzC_out_gga(T121, T122, T124)) → addzC_out_gga(zero(T121), zero(T122), zero(T124))
U34_gga(T102, T103, T105, addzC_out_gga(T102, T103, T105)) → addJ_out_gga(zero(T102), zero(T103), zero(T105))
addJ_in_gga(zero(T438), one(T439), one(T441)) → U35_gga(T438, T439, T441, addxD_in_gga(T438, T439, T441))
U35_gga(T438, T439, T441, addxD_out_gga(T438, T439, T441)) → addJ_out_gga(zero(T438), one(T439), one(T441))
addJ_in_gga(one(T455), zero(T456), one(T458)) → U36_gga(T455, T456, T458, addyE_in_gga(T455, T456, T458))
U36_gga(T455, T456, T458, addyE_out_gga(T455, T456, T458)) → addJ_out_gga(one(T455), zero(T456), one(T458))
addJ_in_gga(one(T466), one(T467), zero(T469)) → U37_gga(T466, T467, T469, addcF_in_gga(T466, T467, T469))
U37_gga(T466, T467, T469, addcF_out_gga(T466, T467, T469)) → addJ_out_gga(one(T466), one(T467), zero(T469))

The argument filtering Pi contains the following mapping:
addJ_in_gga(x1, x2, x3)  =  addJ_in_gga(x1, x2)
b  =  b
addJ_out_gga(x1, x2, x3)  =  addJ_out_gga(x1, x2, x3)
zero(x1)  =  zero(x1)
U30_gga(x1, x2)  =  U30_gga(x1, x2)
binaryZA_in_g(x1)  =  binaryZA_in_g(x1)
U1_g(x1, x2)  =  U1_g(x1, x2)
one(x1)  =  one(x1)
U2_g(x1, x2)  =  U2_g(x1, x2)
binaryB_in_g(x1)  =  binaryB_in_g(x1)
binaryB_out_g(x1)  =  binaryB_out_g(x1)
U3_g(x1, x2)  =  U3_g(x1, x2)
binaryZA_out_g(x1)  =  binaryZA_out_g(x1)
U4_g(x1, x2)  =  U4_g(x1, x2)
U31_gga(x1, x2)  =  U31_gga(x1, x2)
U32_gga(x1, x2)  =  U32_gga(x1, x2)
U33_gga(x1, x2)  =  U33_gga(x1, x2)
U34_gga(x1, x2, x3, x4)  =  U34_gga(x1, x2, x4)
addzC_in_gga(x1, x2, x3)  =  addzC_in_gga(x1, x2)
U5_gga(x1, x2, x3, x4)  =  U5_gga(x1, x2, x4)
U6_gga(x1, x2, x3, x4)  =  U6_gga(x1, x2, x4)
addxD_in_gga(x1, x2, x3)  =  addxD_in_gga(x1, x2)
U24_gga(x1, x2)  =  U24_gga(x1, x2)
addxD_out_gga(x1, x2, x3)  =  addxD_out_gga(x1, x2, x3)
U25_gga(x1, x2)  =  U25_gga(x1, x2)
U26_gga(x1, x2, x3, x4)  =  U26_gga(x1, x2, x4)
U7_gga(x1, x2, x3, x4)  =  U7_gga(x1, x2, x4)
addyE_in_gga(x1, x2, x3)  =  addyE_in_gga(x1, x2)
U27_gga(x1, x2)  =  U27_gga(x1, x2)
addyE_out_gga(x1, x2, x3)  =  addyE_out_gga(x1, x2, x3)
U28_gga(x1, x2)  =  U28_gga(x1, x2)
U29_gga(x1, x2, x3, x4)  =  U29_gga(x1, x2, x4)
U8_gga(x1, x2, x3, x4)  =  U8_gga(x1, x2, x4)
addcF_in_gga(x1, x2, x3)  =  addcF_in_gga(x1, x2)
addcF_out_gga(x1, x2, x3)  =  addcF_out_gga(x1, x2, x3)
U21_gga(x1, x2, x3)  =  U21_gga(x1, x3)
succZH_in_ga(x1, x2)  =  succZH_in_ga(x1)
U11_ga(x1, x2)  =  U11_ga(x1, x2)
succZH_out_ga(x1, x2)  =  succZH_out_ga(x1, x2)
U12_ga(x1, x2, x3)  =  U12_ga(x1, x3)
succG_in_ga(x1, x2)  =  succG_in_ga(x1)
succG_out_ga(x1, x2)  =  succG_out_ga(x1, x2)
U9_ga(x1, x2)  =  U9_ga(x1, x2)
U10_ga(x1, x2, x3)  =  U10_ga(x1, x3)
U22_gga(x1, x2, x3)  =  U22_gga(x1, x3)
U23_gga(x1, x2, x3, x4)  =  U23_gga(x1, x2, x4)
addCI_in_gga(x1, x2, x3)  =  addCI_in_gga(x1, x2)
U13_gga(x1, x2, x3, x4)  =  U13_gga(x1, x2, x4)
addzC_out_gga(x1, x2, x3)  =  addzC_out_gga(x1, x2, x3)
addCI_out_gga(x1, x2, x3)  =  addCI_out_gga(x1, x2, x3)
U14_gga(x1, x2)  =  U14_gga(x1, x2)
U15_gga(x1, x2, x3)  =  U15_gga(x1, x3)
U16_gga(x1, x2, x3, x4)  =  U16_gga(x1, x2, x4)
U17_gga(x1, x2)  =  U17_gga(x1, x2)
U18_gga(x1, x2, x3)  =  U18_gga(x1, x3)
U19_gga(x1, x2, x3, x4)  =  U19_gga(x1, x2, x4)
U20_gga(x1, x2, x3, x4)  =  U20_gga(x1, x2, x4)
U35_gga(x1, x2, x3, x4)  =  U35_gga(x1, x2, x4)
U36_gga(x1, x2, x3, x4)  =  U36_gga(x1, x2, x4)
U37_gga(x1, x2, x3, x4)  =  U37_gga(x1, x2, x4)

Infinitary Constructor Rewriting Termination of PiTRS implies Termination of Prolog

(4) Obligation:

Pi-finite rewrite system:
The TRS R consists of the following rules:

addJ_in_gga(b, b, b) → addJ_out_gga(b, b, b)
addJ_in_gga(zero(T23), b, zero(T23)) → U30_gga(T23, binaryZA_in_g(T23))
binaryZA_in_g(zero(T29)) → U1_g(T29, binaryZA_in_g(T29))
binaryZA_in_g(one(T33)) → U2_g(T33, binaryB_in_g(T33))
binaryB_in_g(b) → binaryB_out_g(b)
binaryB_in_g(zero(T38)) → U3_g(T38, binaryZA_in_g(T38))
U3_g(T38, binaryZA_out_g(T38)) → binaryB_out_g(zero(T38))
binaryB_in_g(one(T42)) → U4_g(T42, binaryB_in_g(T42))
U4_g(T42, binaryB_out_g(T42)) → binaryB_out_g(one(T42))
U2_g(T33, binaryB_out_g(T33)) → binaryZA_out_g(one(T33))
U1_g(T29, binaryZA_out_g(T29)) → binaryZA_out_g(zero(T29))
U30_gga(T23, binaryZA_out_g(T23)) → addJ_out_gga(zero(T23), b, zero(T23))
addJ_in_gga(one(T47), b, one(T47)) → U31_gga(T47, binaryB_in_g(T47))
U31_gga(T47, binaryB_out_g(T47)) → addJ_out_gga(one(T47), b, one(T47))
addJ_in_gga(b, zero(T68), zero(T68)) → U32_gga(T68, binaryZA_in_g(T68))
U32_gga(T68, binaryZA_out_g(T68)) → addJ_out_gga(b, zero(T68), zero(T68))
addJ_in_gga(b, one(T74), one(T74)) → U33_gga(T74, binaryB_in_g(T74))
U33_gga(T74, binaryB_out_g(T74)) → addJ_out_gga(b, one(T74), one(T74))
addJ_in_gga(zero(T102), zero(T103), zero(T105)) → U34_gga(T102, T103, T105, addzC_in_gga(T102, T103, T105))
addzC_in_gga(zero(T121), zero(T122), zero(T124)) → U5_gga(T121, T122, T124, addzC_in_gga(T121, T122, T124))
addzC_in_gga(zero(T140), one(T141), one(T143)) → U6_gga(T140, T141, T143, addxD_in_gga(T140, T141, T143))
addxD_in_gga(one(T149), b, one(T149)) → U24_gga(T149, binaryB_in_g(T149))
U24_gga(T149, binaryB_out_g(T149)) → addxD_out_gga(one(T149), b, one(T149))
addxD_in_gga(zero(T154), b, zero(T154)) → U25_gga(T154, binaryZA_in_g(T154))
U25_gga(T154, binaryZA_out_g(T154)) → addxD_out_gga(zero(T154), b, zero(T154))
addxD_in_gga(T166, T167, T169) → U26_gga(T166, T167, T169, addzC_in_gga(T166, T167, T169))
addzC_in_gga(one(T185), zero(T186), one(T188)) → U7_gga(T185, T186, T188, addyE_in_gga(T185, T186, T188))
addyE_in_gga(b, one(T194), one(T194)) → U27_gga(T194, binaryB_in_g(T194))
U27_gga(T194, binaryB_out_g(T194)) → addyE_out_gga(b, one(T194), one(T194))
addyE_in_gga(b, zero(T199), zero(T199)) → U28_gga(T199, binaryZA_in_g(T199))
U28_gga(T199, binaryZA_out_g(T199)) → addyE_out_gga(b, zero(T199), zero(T199))
addyE_in_gga(T211, T212, T214) → U29_gga(T211, T212, T214, addzC_in_gga(T211, T212, T214))
addzC_in_gga(one(T224), one(T225), zero(T227)) → U8_gga(T224, T225, T227, addcF_in_gga(T224, T225, T227))
addcF_in_gga(b, b, one(b)) → addcF_out_gga(b, b, one(b))
addcF_in_gga(T236, b, T238) → U21_gga(T236, T238, succZH_in_ga(T236, T238))
succZH_in_ga(zero(T244), one(T244)) → U11_ga(T244, binaryZA_in_g(T244))
U11_ga(T244, binaryZA_out_g(T244)) → succZH_out_ga(zero(T244), one(T244))
succZH_in_ga(one(T250), zero(T252)) → U12_ga(T250, T252, succG_in_ga(T250, T252))
succG_in_ga(b, one(b)) → succG_out_ga(b, one(b))
succG_in_ga(zero(T257), one(T257)) → U9_ga(T257, binaryZA_in_g(T257))
U9_ga(T257, binaryZA_out_g(T257)) → succG_out_ga(zero(T257), one(T257))
succG_in_ga(one(T263), zero(T265)) → U10_ga(T263, T265, succG_in_ga(T263, T265))
U10_ga(T263, T265, succG_out_ga(T263, T265)) → succG_out_ga(one(T263), zero(T265))
U12_ga(T250, T252, succG_out_ga(T250, T252)) → succZH_out_ga(one(T250), zero(T252))
U21_gga(T236, T238, succZH_out_ga(T236, T238)) → addcF_out_gga(T236, b, T238)
addcF_in_gga(b, T274, T276) → U22_gga(T274, T276, succZH_in_ga(T274, T276))
U22_gga(T274, T276, succZH_out_ga(T274, T276)) → addcF_out_gga(b, T274, T276)
addcF_in_gga(T288, T289, T291) → U23_gga(T288, T289, T291, addCI_in_gga(T288, T289, T291))
addCI_in_gga(zero(T307), zero(T308), one(T310)) → U13_gga(T307, T308, T310, addzC_in_gga(T307, T308, T310))
U13_gga(T307, T308, T310, addzC_out_gga(T307, T308, T310)) → addCI_out_gga(zero(T307), zero(T308), one(T310))
addCI_in_gga(zero(zero(T335)), one(b), zero(one(T335))) → U14_gga(T335, binaryZA_in_g(T335))
U14_gga(T335, binaryZA_out_g(T335)) → addCI_out_gga(zero(zero(T335)), one(b), zero(one(T335)))
addCI_in_gga(zero(one(T345)), one(b), zero(zero(T347))) → U15_gga(T345, T347, succG_in_ga(T345, T347))
U15_gga(T345, T347, succG_out_ga(T345, T347)) → addCI_out_gga(zero(one(T345)), one(b), zero(zero(T347)))
addCI_in_gga(zero(T358), one(T359), zero(T361)) → U16_gga(T358, T359, T361, addCI_in_gga(T358, T359, T361))
addCI_in_gga(one(b), zero(zero(T386)), zero(one(T386))) → U17_gga(T386, binaryZA_in_g(T386))
U17_gga(T386, binaryZA_out_g(T386)) → addCI_out_gga(one(b), zero(zero(T386)), zero(one(T386)))
addCI_in_gga(one(b), zero(one(T396)), zero(zero(T398))) → U18_gga(T396, T398, succG_in_ga(T396, T398))
U18_gga(T396, T398, succG_out_ga(T396, T398)) → addCI_out_gga(one(b), zero(one(T396)), zero(zero(T398)))
addCI_in_gga(one(T409), zero(T410), zero(T412)) → U19_gga(T409, T410, T412, addCI_in_gga(T409, T410, T412))
addCI_in_gga(one(T422), one(T423), one(T425)) → U20_gga(T422, T423, T425, addcF_in_gga(T422, T423, T425))
U20_gga(T422, T423, T425, addcF_out_gga(T422, T423, T425)) → addCI_out_gga(one(T422), one(T423), one(T425))
U19_gga(T409, T410, T412, addCI_out_gga(T409, T410, T412)) → addCI_out_gga(one(T409), zero(T410), zero(T412))
U16_gga(T358, T359, T361, addCI_out_gga(T358, T359, T361)) → addCI_out_gga(zero(T358), one(T359), zero(T361))
U23_gga(T288, T289, T291, addCI_out_gga(T288, T289, T291)) → addcF_out_gga(T288, T289, T291)
U8_gga(T224, T225, T227, addcF_out_gga(T224, T225, T227)) → addzC_out_gga(one(T224), one(T225), zero(T227))
U29_gga(T211, T212, T214, addzC_out_gga(T211, T212, T214)) → addyE_out_gga(T211, T212, T214)
U7_gga(T185, T186, T188, addyE_out_gga(T185, T186, T188)) → addzC_out_gga(one(T185), zero(T186), one(T188))
U26_gga(T166, T167, T169, addzC_out_gga(T166, T167, T169)) → addxD_out_gga(T166, T167, T169)
U6_gga(T140, T141, T143, addxD_out_gga(T140, T141, T143)) → addzC_out_gga(zero(T140), one(T141), one(T143))
U5_gga(T121, T122, T124, addzC_out_gga(T121, T122, T124)) → addzC_out_gga(zero(T121), zero(T122), zero(T124))
U34_gga(T102, T103, T105, addzC_out_gga(T102, T103, T105)) → addJ_out_gga(zero(T102), zero(T103), zero(T105))
addJ_in_gga(zero(T438), one(T439), one(T441)) → U35_gga(T438, T439, T441, addxD_in_gga(T438, T439, T441))
U35_gga(T438, T439, T441, addxD_out_gga(T438, T439, T441)) → addJ_out_gga(zero(T438), one(T439), one(T441))
addJ_in_gga(one(T455), zero(T456), one(T458)) → U36_gga(T455, T456, T458, addyE_in_gga(T455, T456, T458))
U36_gga(T455, T456, T458, addyE_out_gga(T455, T456, T458)) → addJ_out_gga(one(T455), zero(T456), one(T458))
addJ_in_gga(one(T466), one(T467), zero(T469)) → U37_gga(T466, T467, T469, addcF_in_gga(T466, T467, T469))
U37_gga(T466, T467, T469, addcF_out_gga(T466, T467, T469)) → addJ_out_gga(one(T466), one(T467), zero(T469))

The argument filtering Pi contains the following mapping:
addJ_in_gga(x1, x2, x3)  =  addJ_in_gga(x1, x2)
b  =  b
addJ_out_gga(x1, x2, x3)  =  addJ_out_gga(x1, x2, x3)
zero(x1)  =  zero(x1)
U30_gga(x1, x2)  =  U30_gga(x1, x2)
binaryZA_in_g(x1)  =  binaryZA_in_g(x1)
U1_g(x1, x2)  =  U1_g(x1, x2)
one(x1)  =  one(x1)
U2_g(x1, x2)  =  U2_g(x1, x2)
binaryB_in_g(x1)  =  binaryB_in_g(x1)
binaryB_out_g(x1)  =  binaryB_out_g(x1)
U3_g(x1, x2)  =  U3_g(x1, x2)
binaryZA_out_g(x1)  =  binaryZA_out_g(x1)
U4_g(x1, x2)  =  U4_g(x1, x2)
U31_gga(x1, x2)  =  U31_gga(x1, x2)
U32_gga(x1, x2)  =  U32_gga(x1, x2)
U33_gga(x1, x2)  =  U33_gga(x1, x2)
U34_gga(x1, x2, x3, x4)  =  U34_gga(x1, x2, x4)
addzC_in_gga(x1, x2, x3)  =  addzC_in_gga(x1, x2)
U5_gga(x1, x2, x3, x4)  =  U5_gga(x1, x2, x4)
U6_gga(x1, x2, x3, x4)  =  U6_gga(x1, x2, x4)
addxD_in_gga(x1, x2, x3)  =  addxD_in_gga(x1, x2)
U24_gga(x1, x2)  =  U24_gga(x1, x2)
addxD_out_gga(x1, x2, x3)  =  addxD_out_gga(x1, x2, x3)
U25_gga(x1, x2)  =  U25_gga(x1, x2)
U26_gga(x1, x2, x3, x4)  =  U26_gga(x1, x2, x4)
U7_gga(x1, x2, x3, x4)  =  U7_gga(x1, x2, x4)
addyE_in_gga(x1, x2, x3)  =  addyE_in_gga(x1, x2)
U27_gga(x1, x2)  =  U27_gga(x1, x2)
addyE_out_gga(x1, x2, x3)  =  addyE_out_gga(x1, x2, x3)
U28_gga(x1, x2)  =  U28_gga(x1, x2)
U29_gga(x1, x2, x3, x4)  =  U29_gga(x1, x2, x4)
U8_gga(x1, x2, x3, x4)  =  U8_gga(x1, x2, x4)
addcF_in_gga(x1, x2, x3)  =  addcF_in_gga(x1, x2)
addcF_out_gga(x1, x2, x3)  =  addcF_out_gga(x1, x2, x3)
U21_gga(x1, x2, x3)  =  U21_gga(x1, x3)
succZH_in_ga(x1, x2)  =  succZH_in_ga(x1)
U11_ga(x1, x2)  =  U11_ga(x1, x2)
succZH_out_ga(x1, x2)  =  succZH_out_ga(x1, x2)
U12_ga(x1, x2, x3)  =  U12_ga(x1, x3)
succG_in_ga(x1, x2)  =  succG_in_ga(x1)
succG_out_ga(x1, x2)  =  succG_out_ga(x1, x2)
U9_ga(x1, x2)  =  U9_ga(x1, x2)
U10_ga(x1, x2, x3)  =  U10_ga(x1, x3)
U22_gga(x1, x2, x3)  =  U22_gga(x1, x3)
U23_gga(x1, x2, x3, x4)  =  U23_gga(x1, x2, x4)
addCI_in_gga(x1, x2, x3)  =  addCI_in_gga(x1, x2)
U13_gga(x1, x2, x3, x4)  =  U13_gga(x1, x2, x4)
addzC_out_gga(x1, x2, x3)  =  addzC_out_gga(x1, x2, x3)
addCI_out_gga(x1, x2, x3)  =  addCI_out_gga(x1, x2, x3)
U14_gga(x1, x2)  =  U14_gga(x1, x2)
U15_gga(x1, x2, x3)  =  U15_gga(x1, x3)
U16_gga(x1, x2, x3, x4)  =  U16_gga(x1, x2, x4)
U17_gga(x1, x2)  =  U17_gga(x1, x2)
U18_gga(x1, x2, x3)  =  U18_gga(x1, x3)
U19_gga(x1, x2, x3, x4)  =  U19_gga(x1, x2, x4)
U20_gga(x1, x2, x3, x4)  =  U20_gga(x1, x2, x4)
U35_gga(x1, x2, x3, x4)  =  U35_gga(x1, x2, x4)
U36_gga(x1, x2, x3, x4)  =  U36_gga(x1, x2, x4)
U37_gga(x1, x2, x3, x4)  =  U37_gga(x1, x2, x4)

(5) DependencyPairsProof (EQUIVALENT transformation)

Using Dependency Pairs [AG00,LOPSTR] we result in the following initial DP problem:
Pi DP problem:
The TRS P consists of the following rules:

ADDJ_IN_GGA(zero(T23), b, zero(T23)) → U30_GGA(T23, binaryZA_in_g(T23))
ADDJ_IN_GGA(zero(T23), b, zero(T23)) → BINARYZA_IN_G(T23)
BINARYZA_IN_G(zero(T29)) → U1_G(T29, binaryZA_in_g(T29))
BINARYZA_IN_G(zero(T29)) → BINARYZA_IN_G(T29)
BINARYZA_IN_G(one(T33)) → U2_G(T33, binaryB_in_g(T33))
BINARYZA_IN_G(one(T33)) → BINARYB_IN_G(T33)
BINARYB_IN_G(zero(T38)) → U3_G(T38, binaryZA_in_g(T38))
BINARYB_IN_G(zero(T38)) → BINARYZA_IN_G(T38)
BINARYB_IN_G(one(T42)) → U4_G(T42, binaryB_in_g(T42))
BINARYB_IN_G(one(T42)) → BINARYB_IN_G(T42)
ADDJ_IN_GGA(one(T47), b, one(T47)) → U31_GGA(T47, binaryB_in_g(T47))
ADDJ_IN_GGA(one(T47), b, one(T47)) → BINARYB_IN_G(T47)
ADDJ_IN_GGA(b, zero(T68), zero(T68)) → U32_GGA(T68, binaryZA_in_g(T68))
ADDJ_IN_GGA(b, zero(T68), zero(T68)) → BINARYZA_IN_G(T68)
ADDJ_IN_GGA(b, one(T74), one(T74)) → U33_GGA(T74, binaryB_in_g(T74))
ADDJ_IN_GGA(b, one(T74), one(T74)) → BINARYB_IN_G(T74)
ADDJ_IN_GGA(zero(T102), zero(T103), zero(T105)) → U34_GGA(T102, T103, T105, addzC_in_gga(T102, T103, T105))
ADDJ_IN_GGA(zero(T102), zero(T103), zero(T105)) → ADDZC_IN_GGA(T102, T103, T105)
ADDZC_IN_GGA(zero(T121), zero(T122), zero(T124)) → U5_GGA(T121, T122, T124, addzC_in_gga(T121, T122, T124))
ADDZC_IN_GGA(zero(T121), zero(T122), zero(T124)) → ADDZC_IN_GGA(T121, T122, T124)
ADDZC_IN_GGA(zero(T140), one(T141), one(T143)) → U6_GGA(T140, T141, T143, addxD_in_gga(T140, T141, T143))
ADDZC_IN_GGA(zero(T140), one(T141), one(T143)) → ADDXD_IN_GGA(T140, T141, T143)
ADDXD_IN_GGA(one(T149), b, one(T149)) → U24_GGA(T149, binaryB_in_g(T149))
ADDXD_IN_GGA(one(T149), b, one(T149)) → BINARYB_IN_G(T149)
ADDXD_IN_GGA(zero(T154), b, zero(T154)) → U25_GGA(T154, binaryZA_in_g(T154))
ADDXD_IN_GGA(zero(T154), b, zero(T154)) → BINARYZA_IN_G(T154)
ADDXD_IN_GGA(T166, T167, T169) → U26_GGA(T166, T167, T169, addzC_in_gga(T166, T167, T169))
ADDXD_IN_GGA(T166, T167, T169) → ADDZC_IN_GGA(T166, T167, T169)
ADDZC_IN_GGA(one(T185), zero(T186), one(T188)) → U7_GGA(T185, T186, T188, addyE_in_gga(T185, T186, T188))
ADDZC_IN_GGA(one(T185), zero(T186), one(T188)) → ADDYE_IN_GGA(T185, T186, T188)
ADDYE_IN_GGA(b, one(T194), one(T194)) → U27_GGA(T194, binaryB_in_g(T194))
ADDYE_IN_GGA(b, one(T194), one(T194)) → BINARYB_IN_G(T194)
ADDYE_IN_GGA(b, zero(T199), zero(T199)) → U28_GGA(T199, binaryZA_in_g(T199))
ADDYE_IN_GGA(b, zero(T199), zero(T199)) → BINARYZA_IN_G(T199)
ADDYE_IN_GGA(T211, T212, T214) → U29_GGA(T211, T212, T214, addzC_in_gga(T211, T212, T214))
ADDYE_IN_GGA(T211, T212, T214) → ADDZC_IN_GGA(T211, T212, T214)
ADDZC_IN_GGA(one(T224), one(T225), zero(T227)) → U8_GGA(T224, T225, T227, addcF_in_gga(T224, T225, T227))
ADDZC_IN_GGA(one(T224), one(T225), zero(T227)) → ADDCF_IN_GGA(T224, T225, T227)
ADDCF_IN_GGA(T236, b, T238) → U21_GGA(T236, T238, succZH_in_ga(T236, T238))
ADDCF_IN_GGA(T236, b, T238) → SUCCZH_IN_GA(T236, T238)
SUCCZH_IN_GA(zero(T244), one(T244)) → U11_GA(T244, binaryZA_in_g(T244))
SUCCZH_IN_GA(zero(T244), one(T244)) → BINARYZA_IN_G(T244)
SUCCZH_IN_GA(one(T250), zero(T252)) → U12_GA(T250, T252, succG_in_ga(T250, T252))
SUCCZH_IN_GA(one(T250), zero(T252)) → SUCCG_IN_GA(T250, T252)
SUCCG_IN_GA(zero(T257), one(T257)) → U9_GA(T257, binaryZA_in_g(T257))
SUCCG_IN_GA(zero(T257), one(T257)) → BINARYZA_IN_G(T257)
SUCCG_IN_GA(one(T263), zero(T265)) → U10_GA(T263, T265, succG_in_ga(T263, T265))
SUCCG_IN_GA(one(T263), zero(T265)) → SUCCG_IN_GA(T263, T265)
ADDCF_IN_GGA(b, T274, T276) → U22_GGA(T274, T276, succZH_in_ga(T274, T276))
ADDCF_IN_GGA(b, T274, T276) → SUCCZH_IN_GA(T274, T276)
ADDCF_IN_GGA(T288, T289, T291) → U23_GGA(T288, T289, T291, addCI_in_gga(T288, T289, T291))
ADDCF_IN_GGA(T288, T289, T291) → ADDCI_IN_GGA(T288, T289, T291)
ADDCI_IN_GGA(zero(T307), zero(T308), one(T310)) → U13_GGA(T307, T308, T310, addzC_in_gga(T307, T308, T310))
ADDCI_IN_GGA(zero(T307), zero(T308), one(T310)) → ADDZC_IN_GGA(T307, T308, T310)
ADDCI_IN_GGA(zero(zero(T335)), one(b), zero(one(T335))) → U14_GGA(T335, binaryZA_in_g(T335))
ADDCI_IN_GGA(zero(zero(T335)), one(b), zero(one(T335))) → BINARYZA_IN_G(T335)
ADDCI_IN_GGA(zero(one(T345)), one(b), zero(zero(T347))) → U15_GGA(T345, T347, succG_in_ga(T345, T347))
ADDCI_IN_GGA(zero(one(T345)), one(b), zero(zero(T347))) → SUCCG_IN_GA(T345, T347)
ADDCI_IN_GGA(zero(T358), one(T359), zero(T361)) → U16_GGA(T358, T359, T361, addCI_in_gga(T358, T359, T361))
ADDCI_IN_GGA(zero(T358), one(T359), zero(T361)) → ADDCI_IN_GGA(T358, T359, T361)
ADDCI_IN_GGA(one(b), zero(zero(T386)), zero(one(T386))) → U17_GGA(T386, binaryZA_in_g(T386))
ADDCI_IN_GGA(one(b), zero(zero(T386)), zero(one(T386))) → BINARYZA_IN_G(T386)
ADDCI_IN_GGA(one(b), zero(one(T396)), zero(zero(T398))) → U18_GGA(T396, T398, succG_in_ga(T396, T398))
ADDCI_IN_GGA(one(b), zero(one(T396)), zero(zero(T398))) → SUCCG_IN_GA(T396, T398)
ADDCI_IN_GGA(one(T409), zero(T410), zero(T412)) → U19_GGA(T409, T410, T412, addCI_in_gga(T409, T410, T412))
ADDCI_IN_GGA(one(T409), zero(T410), zero(T412)) → ADDCI_IN_GGA(T409, T410, T412)
ADDCI_IN_GGA(one(T422), one(T423), one(T425)) → U20_GGA(T422, T423, T425, addcF_in_gga(T422, T423, T425))
ADDCI_IN_GGA(one(T422), one(T423), one(T425)) → ADDCF_IN_GGA(T422, T423, T425)
ADDJ_IN_GGA(zero(T438), one(T439), one(T441)) → U35_GGA(T438, T439, T441, addxD_in_gga(T438, T439, T441))
ADDJ_IN_GGA(zero(T438), one(T439), one(T441)) → ADDXD_IN_GGA(T438, T439, T441)
ADDJ_IN_GGA(one(T455), zero(T456), one(T458)) → U36_GGA(T455, T456, T458, addyE_in_gga(T455, T456, T458))
ADDJ_IN_GGA(one(T455), zero(T456), one(T458)) → ADDYE_IN_GGA(T455, T456, T458)
ADDJ_IN_GGA(one(T466), one(T467), zero(T469)) → U37_GGA(T466, T467, T469, addcF_in_gga(T466, T467, T469))
ADDJ_IN_GGA(one(T466), one(T467), zero(T469)) → ADDCF_IN_GGA(T466, T467, T469)

The TRS R consists of the following rules:

addJ_in_gga(b, b, b) → addJ_out_gga(b, b, b)
addJ_in_gga(zero(T23), b, zero(T23)) → U30_gga(T23, binaryZA_in_g(T23))
binaryZA_in_g(zero(T29)) → U1_g(T29, binaryZA_in_g(T29))
binaryZA_in_g(one(T33)) → U2_g(T33, binaryB_in_g(T33))
binaryB_in_g(b) → binaryB_out_g(b)
binaryB_in_g(zero(T38)) → U3_g(T38, binaryZA_in_g(T38))
U3_g(T38, binaryZA_out_g(T38)) → binaryB_out_g(zero(T38))
binaryB_in_g(one(T42)) → U4_g(T42, binaryB_in_g(T42))
U4_g(T42, binaryB_out_g(T42)) → binaryB_out_g(one(T42))
U2_g(T33, binaryB_out_g(T33)) → binaryZA_out_g(one(T33))
U1_g(T29, binaryZA_out_g(T29)) → binaryZA_out_g(zero(T29))
U30_gga(T23, binaryZA_out_g(T23)) → addJ_out_gga(zero(T23), b, zero(T23))
addJ_in_gga(one(T47), b, one(T47)) → U31_gga(T47, binaryB_in_g(T47))
U31_gga(T47, binaryB_out_g(T47)) → addJ_out_gga(one(T47), b, one(T47))
addJ_in_gga(b, zero(T68), zero(T68)) → U32_gga(T68, binaryZA_in_g(T68))
U32_gga(T68, binaryZA_out_g(T68)) → addJ_out_gga(b, zero(T68), zero(T68))
addJ_in_gga(b, one(T74), one(T74)) → U33_gga(T74, binaryB_in_g(T74))
U33_gga(T74, binaryB_out_g(T74)) → addJ_out_gga(b, one(T74), one(T74))
addJ_in_gga(zero(T102), zero(T103), zero(T105)) → U34_gga(T102, T103, T105, addzC_in_gga(T102, T103, T105))
addzC_in_gga(zero(T121), zero(T122), zero(T124)) → U5_gga(T121, T122, T124, addzC_in_gga(T121, T122, T124))
addzC_in_gga(zero(T140), one(T141), one(T143)) → U6_gga(T140, T141, T143, addxD_in_gga(T140, T141, T143))
addxD_in_gga(one(T149), b, one(T149)) → U24_gga(T149, binaryB_in_g(T149))
U24_gga(T149, binaryB_out_g(T149)) → addxD_out_gga(one(T149), b, one(T149))
addxD_in_gga(zero(T154), b, zero(T154)) → U25_gga(T154, binaryZA_in_g(T154))
U25_gga(T154, binaryZA_out_g(T154)) → addxD_out_gga(zero(T154), b, zero(T154))
addxD_in_gga(T166, T167, T169) → U26_gga(T166, T167, T169, addzC_in_gga(T166, T167, T169))
addzC_in_gga(one(T185), zero(T186), one(T188)) → U7_gga(T185, T186, T188, addyE_in_gga(T185, T186, T188))
addyE_in_gga(b, one(T194), one(T194)) → U27_gga(T194, binaryB_in_g(T194))
U27_gga(T194, binaryB_out_g(T194)) → addyE_out_gga(b, one(T194), one(T194))
addyE_in_gga(b, zero(T199), zero(T199)) → U28_gga(T199, binaryZA_in_g(T199))
U28_gga(T199, binaryZA_out_g(T199)) → addyE_out_gga(b, zero(T199), zero(T199))
addyE_in_gga(T211, T212, T214) → U29_gga(T211, T212, T214, addzC_in_gga(T211, T212, T214))
addzC_in_gga(one(T224), one(T225), zero(T227)) → U8_gga(T224, T225, T227, addcF_in_gga(T224, T225, T227))
addcF_in_gga(b, b, one(b)) → addcF_out_gga(b, b, one(b))
addcF_in_gga(T236, b, T238) → U21_gga(T236, T238, succZH_in_ga(T236, T238))
succZH_in_ga(zero(T244), one(T244)) → U11_ga(T244, binaryZA_in_g(T244))
U11_ga(T244, binaryZA_out_g(T244)) → succZH_out_ga(zero(T244), one(T244))
succZH_in_ga(one(T250), zero(T252)) → U12_ga(T250, T252, succG_in_ga(T250, T252))
succG_in_ga(b, one(b)) → succG_out_ga(b, one(b))
succG_in_ga(zero(T257), one(T257)) → U9_ga(T257, binaryZA_in_g(T257))
U9_ga(T257, binaryZA_out_g(T257)) → succG_out_ga(zero(T257), one(T257))
succG_in_ga(one(T263), zero(T265)) → U10_ga(T263, T265, succG_in_ga(T263, T265))
U10_ga(T263, T265, succG_out_ga(T263, T265)) → succG_out_ga(one(T263), zero(T265))
U12_ga(T250, T252, succG_out_ga(T250, T252)) → succZH_out_ga(one(T250), zero(T252))
U21_gga(T236, T238, succZH_out_ga(T236, T238)) → addcF_out_gga(T236, b, T238)
addcF_in_gga(b, T274, T276) → U22_gga(T274, T276, succZH_in_ga(T274, T276))
U22_gga(T274, T276, succZH_out_ga(T274, T276)) → addcF_out_gga(b, T274, T276)
addcF_in_gga(T288, T289, T291) → U23_gga(T288, T289, T291, addCI_in_gga(T288, T289, T291))
addCI_in_gga(zero(T307), zero(T308), one(T310)) → U13_gga(T307, T308, T310, addzC_in_gga(T307, T308, T310))
U13_gga(T307, T308, T310, addzC_out_gga(T307, T308, T310)) → addCI_out_gga(zero(T307), zero(T308), one(T310))
addCI_in_gga(zero(zero(T335)), one(b), zero(one(T335))) → U14_gga(T335, binaryZA_in_g(T335))
U14_gga(T335, binaryZA_out_g(T335)) → addCI_out_gga(zero(zero(T335)), one(b), zero(one(T335)))
addCI_in_gga(zero(one(T345)), one(b), zero(zero(T347))) → U15_gga(T345, T347, succG_in_ga(T345, T347))
U15_gga(T345, T347, succG_out_ga(T345, T347)) → addCI_out_gga(zero(one(T345)), one(b), zero(zero(T347)))
addCI_in_gga(zero(T358), one(T359), zero(T361)) → U16_gga(T358, T359, T361, addCI_in_gga(T358, T359, T361))
addCI_in_gga(one(b), zero(zero(T386)), zero(one(T386))) → U17_gga(T386, binaryZA_in_g(T386))
U17_gga(T386, binaryZA_out_g(T386)) → addCI_out_gga(one(b), zero(zero(T386)), zero(one(T386)))
addCI_in_gga(one(b), zero(one(T396)), zero(zero(T398))) → U18_gga(T396, T398, succG_in_ga(T396, T398))
U18_gga(T396, T398, succG_out_ga(T396, T398)) → addCI_out_gga(one(b), zero(one(T396)), zero(zero(T398)))
addCI_in_gga(one(T409), zero(T410), zero(T412)) → U19_gga(T409, T410, T412, addCI_in_gga(T409, T410, T412))
addCI_in_gga(one(T422), one(T423), one(T425)) → U20_gga(T422, T423, T425, addcF_in_gga(T422, T423, T425))
U20_gga(T422, T423, T425, addcF_out_gga(T422, T423, T425)) → addCI_out_gga(one(T422), one(T423), one(T425))
U19_gga(T409, T410, T412, addCI_out_gga(T409, T410, T412)) → addCI_out_gga(one(T409), zero(T410), zero(T412))
U16_gga(T358, T359, T361, addCI_out_gga(T358, T359, T361)) → addCI_out_gga(zero(T358), one(T359), zero(T361))
U23_gga(T288, T289, T291, addCI_out_gga(T288, T289, T291)) → addcF_out_gga(T288, T289, T291)
U8_gga(T224, T225, T227, addcF_out_gga(T224, T225, T227)) → addzC_out_gga(one(T224), one(T225), zero(T227))
U29_gga(T211, T212, T214, addzC_out_gga(T211, T212, T214)) → addyE_out_gga(T211, T212, T214)
U7_gga(T185, T186, T188, addyE_out_gga(T185, T186, T188)) → addzC_out_gga(one(T185), zero(T186), one(T188))
U26_gga(T166, T167, T169, addzC_out_gga(T166, T167, T169)) → addxD_out_gga(T166, T167, T169)
U6_gga(T140, T141, T143, addxD_out_gga(T140, T141, T143)) → addzC_out_gga(zero(T140), one(T141), one(T143))
U5_gga(T121, T122, T124, addzC_out_gga(T121, T122, T124)) → addzC_out_gga(zero(T121), zero(T122), zero(T124))
U34_gga(T102, T103, T105, addzC_out_gga(T102, T103, T105)) → addJ_out_gga(zero(T102), zero(T103), zero(T105))
addJ_in_gga(zero(T438), one(T439), one(T441)) → U35_gga(T438, T439, T441, addxD_in_gga(T438, T439, T441))
U35_gga(T438, T439, T441, addxD_out_gga(T438, T439, T441)) → addJ_out_gga(zero(T438), one(T439), one(T441))
addJ_in_gga(one(T455), zero(T456), one(T458)) → U36_gga(T455, T456, T458, addyE_in_gga(T455, T456, T458))
U36_gga(T455, T456, T458, addyE_out_gga(T455, T456, T458)) → addJ_out_gga(one(T455), zero(T456), one(T458))
addJ_in_gga(one(T466), one(T467), zero(T469)) → U37_gga(T466, T467, T469, addcF_in_gga(T466, T467, T469))
U37_gga(T466, T467, T469, addcF_out_gga(T466, T467, T469)) → addJ_out_gga(one(T466), one(T467), zero(T469))

The argument filtering Pi contains the following mapping:
addJ_in_gga(x1, x2, x3)  =  addJ_in_gga(x1, x2)
b  =  b
addJ_out_gga(x1, x2, x3)  =  addJ_out_gga(x1, x2, x3)
zero(x1)  =  zero(x1)
U30_gga(x1, x2)  =  U30_gga(x1, x2)
binaryZA_in_g(x1)  =  binaryZA_in_g(x1)
U1_g(x1, x2)  =  U1_g(x1, x2)
one(x1)  =  one(x1)
U2_g(x1, x2)  =  U2_g(x1, x2)
binaryB_in_g(x1)  =  binaryB_in_g(x1)
binaryB_out_g(x1)  =  binaryB_out_g(x1)
U3_g(x1, x2)  =  U3_g(x1, x2)
binaryZA_out_g(x1)  =  binaryZA_out_g(x1)
U4_g(x1, x2)  =  U4_g(x1, x2)
U31_gga(x1, x2)  =  U31_gga(x1, x2)
U32_gga(x1, x2)  =  U32_gga(x1, x2)
U33_gga(x1, x2)  =  U33_gga(x1, x2)
U34_gga(x1, x2, x3, x4)  =  U34_gga(x1, x2, x4)
addzC_in_gga(x1, x2, x3)  =  addzC_in_gga(x1, x2)
U5_gga(x1, x2, x3, x4)  =  U5_gga(x1, x2, x4)
U6_gga(x1, x2, x3, x4)  =  U6_gga(x1, x2, x4)
addxD_in_gga(x1, x2, x3)  =  addxD_in_gga(x1, x2)
U24_gga(x1, x2)  =  U24_gga(x1, x2)
addxD_out_gga(x1, x2, x3)  =  addxD_out_gga(x1, x2, x3)
U25_gga(x1, x2)  =  U25_gga(x1, x2)
U26_gga(x1, x2, x3, x4)  =  U26_gga(x1, x2, x4)
U7_gga(x1, x2, x3, x4)  =  U7_gga(x1, x2, x4)
addyE_in_gga(x1, x2, x3)  =  addyE_in_gga(x1, x2)
U27_gga(x1, x2)  =  U27_gga(x1, x2)
addyE_out_gga(x1, x2, x3)  =  addyE_out_gga(x1, x2, x3)
U28_gga(x1, x2)  =  U28_gga(x1, x2)
U29_gga(x1, x2, x3, x4)  =  U29_gga(x1, x2, x4)
U8_gga(x1, x2, x3, x4)  =  U8_gga(x1, x2, x4)
addcF_in_gga(x1, x2, x3)  =  addcF_in_gga(x1, x2)
addcF_out_gga(x1, x2, x3)  =  addcF_out_gga(x1, x2, x3)
U21_gga(x1, x2, x3)  =  U21_gga(x1, x3)
succZH_in_ga(x1, x2)  =  succZH_in_ga(x1)
U11_ga(x1, x2)  =  U11_ga(x1, x2)
succZH_out_ga(x1, x2)  =  succZH_out_ga(x1, x2)
U12_ga(x1, x2, x3)  =  U12_ga(x1, x3)
succG_in_ga(x1, x2)  =  succG_in_ga(x1)
succG_out_ga(x1, x2)  =  succG_out_ga(x1, x2)
U9_ga(x1, x2)  =  U9_ga(x1, x2)
U10_ga(x1, x2, x3)  =  U10_ga(x1, x3)
U22_gga(x1, x2, x3)  =  U22_gga(x1, x3)
U23_gga(x1, x2, x3, x4)  =  U23_gga(x1, x2, x4)
addCI_in_gga(x1, x2, x3)  =  addCI_in_gga(x1, x2)
U13_gga(x1, x2, x3, x4)  =  U13_gga(x1, x2, x4)
addzC_out_gga(x1, x2, x3)  =  addzC_out_gga(x1, x2, x3)
addCI_out_gga(x1, x2, x3)  =  addCI_out_gga(x1, x2, x3)
U14_gga(x1, x2)  =  U14_gga(x1, x2)
U15_gga(x1, x2, x3)  =  U15_gga(x1, x3)
U16_gga(x1, x2, x3, x4)  =  U16_gga(x1, x2, x4)
U17_gga(x1, x2)  =  U17_gga(x1, x2)
U18_gga(x1, x2, x3)  =  U18_gga(x1, x3)
U19_gga(x1, x2, x3, x4)  =  U19_gga(x1, x2, x4)
U20_gga(x1, x2, x3, x4)  =  U20_gga(x1, x2, x4)
U35_gga(x1, x2, x3, x4)  =  U35_gga(x1, x2, x4)
U36_gga(x1, x2, x3, x4)  =  U36_gga(x1, x2, x4)
U37_gga(x1, x2, x3, x4)  =  U37_gga(x1, x2, x4)
ADDJ_IN_GGA(x1, x2, x3)  =  ADDJ_IN_GGA(x1, x2)
U30_GGA(x1, x2)  =  U30_GGA(x1, x2)
BINARYZA_IN_G(x1)  =  BINARYZA_IN_G(x1)
U1_G(x1, x2)  =  U1_G(x1, x2)
U2_G(x1, x2)  =  U2_G(x1, x2)
BINARYB_IN_G(x1)  =  BINARYB_IN_G(x1)
U3_G(x1, x2)  =  U3_G(x1, x2)
U4_G(x1, x2)  =  U4_G(x1, x2)
U31_GGA(x1, x2)  =  U31_GGA(x1, x2)
U32_GGA(x1, x2)  =  U32_GGA(x1, x2)
U33_GGA(x1, x2)  =  U33_GGA(x1, x2)
U34_GGA(x1, x2, x3, x4)  =  U34_GGA(x1, x2, x4)
ADDZC_IN_GGA(x1, x2, x3)  =  ADDZC_IN_GGA(x1, x2)
U5_GGA(x1, x2, x3, x4)  =  U5_GGA(x1, x2, x4)
U6_GGA(x1, x2, x3, x4)  =  U6_GGA(x1, x2, x4)
ADDXD_IN_GGA(x1, x2, x3)  =  ADDXD_IN_GGA(x1, x2)
U24_GGA(x1, x2)  =  U24_GGA(x1, x2)
U25_GGA(x1, x2)  =  U25_GGA(x1, x2)
U26_GGA(x1, x2, x3, x4)  =  U26_GGA(x1, x2, x4)
U7_GGA(x1, x2, x3, x4)  =  U7_GGA(x1, x2, x4)
ADDYE_IN_GGA(x1, x2, x3)  =  ADDYE_IN_GGA(x1, x2)
U27_GGA(x1, x2)  =  U27_GGA(x1, x2)
U28_GGA(x1, x2)  =  U28_GGA(x1, x2)
U29_GGA(x1, x2, x3, x4)  =  U29_GGA(x1, x2, x4)
U8_GGA(x1, x2, x3, x4)  =  U8_GGA(x1, x2, x4)
ADDCF_IN_GGA(x1, x2, x3)  =  ADDCF_IN_GGA(x1, x2)
U21_GGA(x1, x2, x3)  =  U21_GGA(x1, x3)
SUCCZH_IN_GA(x1, x2)  =  SUCCZH_IN_GA(x1)
U11_GA(x1, x2)  =  U11_GA(x1, x2)
U12_GA(x1, x2, x3)  =  U12_GA(x1, x3)
SUCCG_IN_GA(x1, x2)  =  SUCCG_IN_GA(x1)
U9_GA(x1, x2)  =  U9_GA(x1, x2)
U10_GA(x1, x2, x3)  =  U10_GA(x1, x3)
U22_GGA(x1, x2, x3)  =  U22_GGA(x1, x3)
U23_GGA(x1, x2, x3, x4)  =  U23_GGA(x1, x2, x4)
ADDCI_IN_GGA(x1, x2, x3)  =  ADDCI_IN_GGA(x1, x2)
U13_GGA(x1, x2, x3, x4)  =  U13_GGA(x1, x2, x4)
U14_GGA(x1, x2)  =  U14_GGA(x1, x2)
U15_GGA(x1, x2, x3)  =  U15_GGA(x1, x3)
U16_GGA(x1, x2, x3, x4)  =  U16_GGA(x1, x2, x4)
U17_GGA(x1, x2)  =  U17_GGA(x1, x2)
U18_GGA(x1, x2, x3)  =  U18_GGA(x1, x3)
U19_GGA(x1, x2, x3, x4)  =  U19_GGA(x1, x2, x4)
U20_GGA(x1, x2, x3, x4)  =  U20_GGA(x1, x2, x4)
U35_GGA(x1, x2, x3, x4)  =  U35_GGA(x1, x2, x4)
U36_GGA(x1, x2, x3, x4)  =  U36_GGA(x1, x2, x4)
U37_GGA(x1, x2, x3, x4)  =  U37_GGA(x1, x2, x4)

We have to consider all (P,R,Pi)-chains

(6) Obligation:

Pi DP problem:
The TRS P consists of the following rules:

ADDJ_IN_GGA(zero(T23), b, zero(T23)) → U30_GGA(T23, binaryZA_in_g(T23))
ADDJ_IN_GGA(zero(T23), b, zero(T23)) → BINARYZA_IN_G(T23)
BINARYZA_IN_G(zero(T29)) → U1_G(T29, binaryZA_in_g(T29))
BINARYZA_IN_G(zero(T29)) → BINARYZA_IN_G(T29)
BINARYZA_IN_G(one(T33)) → U2_G(T33, binaryB_in_g(T33))
BINARYZA_IN_G(one(T33)) → BINARYB_IN_G(T33)
BINARYB_IN_G(zero(T38)) → U3_G(T38, binaryZA_in_g(T38))
BINARYB_IN_G(zero(T38)) → BINARYZA_IN_G(T38)
BINARYB_IN_G(one(T42)) → U4_G(T42, binaryB_in_g(T42))
BINARYB_IN_G(one(T42)) → BINARYB_IN_G(T42)
ADDJ_IN_GGA(one(T47), b, one(T47)) → U31_GGA(T47, binaryB_in_g(T47))
ADDJ_IN_GGA(one(T47), b, one(T47)) → BINARYB_IN_G(T47)
ADDJ_IN_GGA(b, zero(T68), zero(T68)) → U32_GGA(T68, binaryZA_in_g(T68))
ADDJ_IN_GGA(b, zero(T68), zero(T68)) → BINARYZA_IN_G(T68)
ADDJ_IN_GGA(b, one(T74), one(T74)) → U33_GGA(T74, binaryB_in_g(T74))
ADDJ_IN_GGA(b, one(T74), one(T74)) → BINARYB_IN_G(T74)
ADDJ_IN_GGA(zero(T102), zero(T103), zero(T105)) → U34_GGA(T102, T103, T105, addzC_in_gga(T102, T103, T105))
ADDJ_IN_GGA(zero(T102), zero(T103), zero(T105)) → ADDZC_IN_GGA(T102, T103, T105)
ADDZC_IN_GGA(zero(T121), zero(T122), zero(T124)) → U5_GGA(T121, T122, T124, addzC_in_gga(T121, T122, T124))
ADDZC_IN_GGA(zero(T121), zero(T122), zero(T124)) → ADDZC_IN_GGA(T121, T122, T124)
ADDZC_IN_GGA(zero(T140), one(T141), one(T143)) → U6_GGA(T140, T141, T143, addxD_in_gga(T140, T141, T143))
ADDZC_IN_GGA(zero(T140), one(T141), one(T143)) → ADDXD_IN_GGA(T140, T141, T143)
ADDXD_IN_GGA(one(T149), b, one(T149)) → U24_GGA(T149, binaryB_in_g(T149))
ADDXD_IN_GGA(one(T149), b, one(T149)) → BINARYB_IN_G(T149)
ADDXD_IN_GGA(zero(T154), b, zero(T154)) → U25_GGA(T154, binaryZA_in_g(T154))
ADDXD_IN_GGA(zero(T154), b, zero(T154)) → BINARYZA_IN_G(T154)
ADDXD_IN_GGA(T166, T167, T169) → U26_GGA(T166, T167, T169, addzC_in_gga(T166, T167, T169))
ADDXD_IN_GGA(T166, T167, T169) → ADDZC_IN_GGA(T166, T167, T169)
ADDZC_IN_GGA(one(T185), zero(T186), one(T188)) → U7_GGA(T185, T186, T188, addyE_in_gga(T185, T186, T188))
ADDZC_IN_GGA(one(T185), zero(T186), one(T188)) → ADDYE_IN_GGA(T185, T186, T188)
ADDYE_IN_GGA(b, one(T194), one(T194)) → U27_GGA(T194, binaryB_in_g(T194))
ADDYE_IN_GGA(b, one(T194), one(T194)) → BINARYB_IN_G(T194)
ADDYE_IN_GGA(b, zero(T199), zero(T199)) → U28_GGA(T199, binaryZA_in_g(T199))
ADDYE_IN_GGA(b, zero(T199), zero(T199)) → BINARYZA_IN_G(T199)
ADDYE_IN_GGA(T211, T212, T214) → U29_GGA(T211, T212, T214, addzC_in_gga(T211, T212, T214))
ADDYE_IN_GGA(T211, T212, T214) → ADDZC_IN_GGA(T211, T212, T214)
ADDZC_IN_GGA(one(T224), one(T225), zero(T227)) → U8_GGA(T224, T225, T227, addcF_in_gga(T224, T225, T227))
ADDZC_IN_GGA(one(T224), one(T225), zero(T227)) → ADDCF_IN_GGA(T224, T225, T227)
ADDCF_IN_GGA(T236, b, T238) → U21_GGA(T236, T238, succZH_in_ga(T236, T238))
ADDCF_IN_GGA(T236, b, T238) → SUCCZH_IN_GA(T236, T238)
SUCCZH_IN_GA(zero(T244), one(T244)) → U11_GA(T244, binaryZA_in_g(T244))
SUCCZH_IN_GA(zero(T244), one(T244)) → BINARYZA_IN_G(T244)
SUCCZH_IN_GA(one(T250), zero(T252)) → U12_GA(T250, T252, succG_in_ga(T250, T252))
SUCCZH_IN_GA(one(T250), zero(T252)) → SUCCG_IN_GA(T250, T252)
SUCCG_IN_GA(zero(T257), one(T257)) → U9_GA(T257, binaryZA_in_g(T257))
SUCCG_IN_GA(zero(T257), one(T257)) → BINARYZA_IN_G(T257)
SUCCG_IN_GA(one(T263), zero(T265)) → U10_GA(T263, T265, succG_in_ga(T263, T265))
SUCCG_IN_GA(one(T263), zero(T265)) → SUCCG_IN_GA(T263, T265)
ADDCF_IN_GGA(b, T274, T276) → U22_GGA(T274, T276, succZH_in_ga(T274, T276))
ADDCF_IN_GGA(b, T274, T276) → SUCCZH_IN_GA(T274, T276)
ADDCF_IN_GGA(T288, T289, T291) → U23_GGA(T288, T289, T291, addCI_in_gga(T288, T289, T291))
ADDCF_IN_GGA(T288, T289, T291) → ADDCI_IN_GGA(T288, T289, T291)
ADDCI_IN_GGA(zero(T307), zero(T308), one(T310)) → U13_GGA(T307, T308, T310, addzC_in_gga(T307, T308, T310))
ADDCI_IN_GGA(zero(T307), zero(T308), one(T310)) → ADDZC_IN_GGA(T307, T308, T310)
ADDCI_IN_GGA(zero(zero(T335)), one(b), zero(one(T335))) → U14_GGA(T335, binaryZA_in_g(T335))
ADDCI_IN_GGA(zero(zero(T335)), one(b), zero(one(T335))) → BINARYZA_IN_G(T335)
ADDCI_IN_GGA(zero(one(T345)), one(b), zero(zero(T347))) → U15_GGA(T345, T347, succG_in_ga(T345, T347))
ADDCI_IN_GGA(zero(one(T345)), one(b), zero(zero(T347))) → SUCCG_IN_GA(T345, T347)
ADDCI_IN_GGA(zero(T358), one(T359), zero(T361)) → U16_GGA(T358, T359, T361, addCI_in_gga(T358, T359, T361))
ADDCI_IN_GGA(zero(T358), one(T359), zero(T361)) → ADDCI_IN_GGA(T358, T359, T361)
ADDCI_IN_GGA(one(b), zero(zero(T386)), zero(one(T386))) → U17_GGA(T386, binaryZA_in_g(T386))
ADDCI_IN_GGA(one(b), zero(zero(T386)), zero(one(T386))) → BINARYZA_IN_G(T386)
ADDCI_IN_GGA(one(b), zero(one(T396)), zero(zero(T398))) → U18_GGA(T396, T398, succG_in_ga(T396, T398))
ADDCI_IN_GGA(one(b), zero(one(T396)), zero(zero(T398))) → SUCCG_IN_GA(T396, T398)
ADDCI_IN_GGA(one(T409), zero(T410), zero(T412)) → U19_GGA(T409, T410, T412, addCI_in_gga(T409, T410, T412))
ADDCI_IN_GGA(one(T409), zero(T410), zero(T412)) → ADDCI_IN_GGA(T409, T410, T412)
ADDCI_IN_GGA(one(T422), one(T423), one(T425)) → U20_GGA(T422, T423, T425, addcF_in_gga(T422, T423, T425))
ADDCI_IN_GGA(one(T422), one(T423), one(T425)) → ADDCF_IN_GGA(T422, T423, T425)
ADDJ_IN_GGA(zero(T438), one(T439), one(T441)) → U35_GGA(T438, T439, T441, addxD_in_gga(T438, T439, T441))
ADDJ_IN_GGA(zero(T438), one(T439), one(T441)) → ADDXD_IN_GGA(T438, T439, T441)
ADDJ_IN_GGA(one(T455), zero(T456), one(T458)) → U36_GGA(T455, T456, T458, addyE_in_gga(T455, T456, T458))
ADDJ_IN_GGA(one(T455), zero(T456), one(T458)) → ADDYE_IN_GGA(T455, T456, T458)
ADDJ_IN_GGA(one(T466), one(T467), zero(T469)) → U37_GGA(T466, T467, T469, addcF_in_gga(T466, T467, T469))
ADDJ_IN_GGA(one(T466), one(T467), zero(T469)) → ADDCF_IN_GGA(T466, T467, T469)

The TRS R consists of the following rules:

addJ_in_gga(b, b, b) → addJ_out_gga(b, b, b)
addJ_in_gga(zero(T23), b, zero(T23)) → U30_gga(T23, binaryZA_in_g(T23))
binaryZA_in_g(zero(T29)) → U1_g(T29, binaryZA_in_g(T29))
binaryZA_in_g(one(T33)) → U2_g(T33, binaryB_in_g(T33))
binaryB_in_g(b) → binaryB_out_g(b)
binaryB_in_g(zero(T38)) → U3_g(T38, binaryZA_in_g(T38))
U3_g(T38, binaryZA_out_g(T38)) → binaryB_out_g(zero(T38))
binaryB_in_g(one(T42)) → U4_g(T42, binaryB_in_g(T42))
U4_g(T42, binaryB_out_g(T42)) → binaryB_out_g(one(T42))
U2_g(T33, binaryB_out_g(T33)) → binaryZA_out_g(one(T33))
U1_g(T29, binaryZA_out_g(T29)) → binaryZA_out_g(zero(T29))
U30_gga(T23, binaryZA_out_g(T23)) → addJ_out_gga(zero(T23), b, zero(T23))
addJ_in_gga(one(T47), b, one(T47)) → U31_gga(T47, binaryB_in_g(T47))
U31_gga(T47, binaryB_out_g(T47)) → addJ_out_gga(one(T47), b, one(T47))
addJ_in_gga(b, zero(T68), zero(T68)) → U32_gga(T68, binaryZA_in_g(T68))
U32_gga(T68, binaryZA_out_g(T68)) → addJ_out_gga(b, zero(T68), zero(T68))
addJ_in_gga(b, one(T74), one(T74)) → U33_gga(T74, binaryB_in_g(T74))
U33_gga(T74, binaryB_out_g(T74)) → addJ_out_gga(b, one(T74), one(T74))
addJ_in_gga(zero(T102), zero(T103), zero(T105)) → U34_gga(T102, T103, T105, addzC_in_gga(T102, T103, T105))
addzC_in_gga(zero(T121), zero(T122), zero(T124)) → U5_gga(T121, T122, T124, addzC_in_gga(T121, T122, T124))
addzC_in_gga(zero(T140), one(T141), one(T143)) → U6_gga(T140, T141, T143, addxD_in_gga(T140, T141, T143))
addxD_in_gga(one(T149), b, one(T149)) → U24_gga(T149, binaryB_in_g(T149))
U24_gga(T149, binaryB_out_g(T149)) → addxD_out_gga(one(T149), b, one(T149))
addxD_in_gga(zero(T154), b, zero(T154)) → U25_gga(T154, binaryZA_in_g(T154))
U25_gga(T154, binaryZA_out_g(T154)) → addxD_out_gga(zero(T154), b, zero(T154))
addxD_in_gga(T166, T167, T169) → U26_gga(T166, T167, T169, addzC_in_gga(T166, T167, T169))
addzC_in_gga(one(T185), zero(T186), one(T188)) → U7_gga(T185, T186, T188, addyE_in_gga(T185, T186, T188))
addyE_in_gga(b, one(T194), one(T194)) → U27_gga(T194, binaryB_in_g(T194))
U27_gga(T194, binaryB_out_g(T194)) → addyE_out_gga(b, one(T194), one(T194))
addyE_in_gga(b, zero(T199), zero(T199)) → U28_gga(T199, binaryZA_in_g(T199))
U28_gga(T199, binaryZA_out_g(T199)) → addyE_out_gga(b, zero(T199), zero(T199))
addyE_in_gga(T211, T212, T214) → U29_gga(T211, T212, T214, addzC_in_gga(T211, T212, T214))
addzC_in_gga(one(T224), one(T225), zero(T227)) → U8_gga(T224, T225, T227, addcF_in_gga(T224, T225, T227))
addcF_in_gga(b, b, one(b)) → addcF_out_gga(b, b, one(b))
addcF_in_gga(T236, b, T238) → U21_gga(T236, T238, succZH_in_ga(T236, T238))
succZH_in_ga(zero(T244), one(T244)) → U11_ga(T244, binaryZA_in_g(T244))
U11_ga(T244, binaryZA_out_g(T244)) → succZH_out_ga(zero(T244), one(T244))
succZH_in_ga(one(T250), zero(T252)) → U12_ga(T250, T252, succG_in_ga(T250, T252))
succG_in_ga(b, one(b)) → succG_out_ga(b, one(b))
succG_in_ga(zero(T257), one(T257)) → U9_ga(T257, binaryZA_in_g(T257))
U9_ga(T257, binaryZA_out_g(T257)) → succG_out_ga(zero(T257), one(T257))
succG_in_ga(one(T263), zero(T265)) → U10_ga(T263, T265, succG_in_ga(T263, T265))
U10_ga(T263, T265, succG_out_ga(T263, T265)) → succG_out_ga(one(T263), zero(T265))
U12_ga(T250, T252, succG_out_ga(T250, T252)) → succZH_out_ga(one(T250), zero(T252))
U21_gga(T236, T238, succZH_out_ga(T236, T238)) → addcF_out_gga(T236, b, T238)
addcF_in_gga(b, T274, T276) → U22_gga(T274, T276, succZH_in_ga(T274, T276))
U22_gga(T274, T276, succZH_out_ga(T274, T276)) → addcF_out_gga(b, T274, T276)
addcF_in_gga(T288, T289, T291) → U23_gga(T288, T289, T291, addCI_in_gga(T288, T289, T291))
addCI_in_gga(zero(T307), zero(T308), one(T310)) → U13_gga(T307, T308, T310, addzC_in_gga(T307, T308, T310))
U13_gga(T307, T308, T310, addzC_out_gga(T307, T308, T310)) → addCI_out_gga(zero(T307), zero(T308), one(T310))
addCI_in_gga(zero(zero(T335)), one(b), zero(one(T335))) → U14_gga(T335, binaryZA_in_g(T335))
U14_gga(T335, binaryZA_out_g(T335)) → addCI_out_gga(zero(zero(T335)), one(b), zero(one(T335)))
addCI_in_gga(zero(one(T345)), one(b), zero(zero(T347))) → U15_gga(T345, T347, succG_in_ga(T345, T347))
U15_gga(T345, T347, succG_out_ga(T345, T347)) → addCI_out_gga(zero(one(T345)), one(b), zero(zero(T347)))
addCI_in_gga(zero(T358), one(T359), zero(T361)) → U16_gga(T358, T359, T361, addCI_in_gga(T358, T359, T361))
addCI_in_gga(one(b), zero(zero(T386)), zero(one(T386))) → U17_gga(T386, binaryZA_in_g(T386))
U17_gga(T386, binaryZA_out_g(T386)) → addCI_out_gga(one(b), zero(zero(T386)), zero(one(T386)))
addCI_in_gga(one(b), zero(one(T396)), zero(zero(T398))) → U18_gga(T396, T398, succG_in_ga(T396, T398))
U18_gga(T396, T398, succG_out_ga(T396, T398)) → addCI_out_gga(one(b), zero(one(T396)), zero(zero(T398)))
addCI_in_gga(one(T409), zero(T410), zero(T412)) → U19_gga(T409, T410, T412, addCI_in_gga(T409, T410, T412))
addCI_in_gga(one(T422), one(T423), one(T425)) → U20_gga(T422, T423, T425, addcF_in_gga(T422, T423, T425))
U20_gga(T422, T423, T425, addcF_out_gga(T422, T423, T425)) → addCI_out_gga(one(T422), one(T423), one(T425))
U19_gga(T409, T410, T412, addCI_out_gga(T409, T410, T412)) → addCI_out_gga(one(T409), zero(T410), zero(T412))
U16_gga(T358, T359, T361, addCI_out_gga(T358, T359, T361)) → addCI_out_gga(zero(T358), one(T359), zero(T361))
U23_gga(T288, T289, T291, addCI_out_gga(T288, T289, T291)) → addcF_out_gga(T288, T289, T291)
U8_gga(T224, T225, T227, addcF_out_gga(T224, T225, T227)) → addzC_out_gga(one(T224), one(T225), zero(T227))
U29_gga(T211, T212, T214, addzC_out_gga(T211, T212, T214)) → addyE_out_gga(T211, T212, T214)
U7_gga(T185, T186, T188, addyE_out_gga(T185, T186, T188)) → addzC_out_gga(one(T185), zero(T186), one(T188))
U26_gga(T166, T167, T169, addzC_out_gga(T166, T167, T169)) → addxD_out_gga(T166, T167, T169)
U6_gga(T140, T141, T143, addxD_out_gga(T140, T141, T143)) → addzC_out_gga(zero(T140), one(T141), one(T143))
U5_gga(T121, T122, T124, addzC_out_gga(T121, T122, T124)) → addzC_out_gga(zero(T121), zero(T122), zero(T124))
U34_gga(T102, T103, T105, addzC_out_gga(T102, T103, T105)) → addJ_out_gga(zero(T102), zero(T103), zero(T105))
addJ_in_gga(zero(T438), one(T439), one(T441)) → U35_gga(T438, T439, T441, addxD_in_gga(T438, T439, T441))
U35_gga(T438, T439, T441, addxD_out_gga(T438, T439, T441)) → addJ_out_gga(zero(T438), one(T439), one(T441))
addJ_in_gga(one(T455), zero(T456), one(T458)) → U36_gga(T455, T456, T458, addyE_in_gga(T455, T456, T458))
U36_gga(T455, T456, T458, addyE_out_gga(T455, T456, T458)) → addJ_out_gga(one(T455), zero(T456), one(T458))
addJ_in_gga(one(T466), one(T467), zero(T469)) → U37_gga(T466, T467, T469, addcF_in_gga(T466, T467, T469))
U37_gga(T466, T467, T469, addcF_out_gga(T466, T467, T469)) → addJ_out_gga(one(T466), one(T467), zero(T469))

The argument filtering Pi contains the following mapping:
addJ_in_gga(x1, x2, x3)  =  addJ_in_gga(x1, x2)
b  =  b
addJ_out_gga(x1, x2, x3)  =  addJ_out_gga(x1, x2, x3)
zero(x1)  =  zero(x1)
U30_gga(x1, x2)  =  U30_gga(x1, x2)
binaryZA_in_g(x1)  =  binaryZA_in_g(x1)
U1_g(x1, x2)  =  U1_g(x1, x2)
one(x1)  =  one(x1)
U2_g(x1, x2)  =  U2_g(x1, x2)
binaryB_in_g(x1)  =  binaryB_in_g(x1)
binaryB_out_g(x1)  =  binaryB_out_g(x1)
U3_g(x1, x2)  =  U3_g(x1, x2)
binaryZA_out_g(x1)  =  binaryZA_out_g(x1)
U4_g(x1, x2)  =  U4_g(x1, x2)
U31_gga(x1, x2)  =  U31_gga(x1, x2)
U32_gga(x1, x2)  =  U32_gga(x1, x2)
U33_gga(x1, x2)  =  U33_gga(x1, x2)
U34_gga(x1, x2, x3, x4)  =  U34_gga(x1, x2, x4)
addzC_in_gga(x1, x2, x3)  =  addzC_in_gga(x1, x2)
U5_gga(x1, x2, x3, x4)  =  U5_gga(x1, x2, x4)
U6_gga(x1, x2, x3, x4)  =  U6_gga(x1, x2, x4)
addxD_in_gga(x1, x2, x3)  =  addxD_in_gga(x1, x2)
U24_gga(x1, x2)  =  U24_gga(x1, x2)
addxD_out_gga(x1, x2, x3)  =  addxD_out_gga(x1, x2, x3)
U25_gga(x1, x2)  =  U25_gga(x1, x2)
U26_gga(x1, x2, x3, x4)  =  U26_gga(x1, x2, x4)
U7_gga(x1, x2, x3, x4)  =  U7_gga(x1, x2, x4)
addyE_in_gga(x1, x2, x3)  =  addyE_in_gga(x1, x2)
U27_gga(x1, x2)  =  U27_gga(x1, x2)
addyE_out_gga(x1, x2, x3)  =  addyE_out_gga(x1, x2, x3)
U28_gga(x1, x2)  =  U28_gga(x1, x2)
U29_gga(x1, x2, x3, x4)  =  U29_gga(x1, x2, x4)
U8_gga(x1, x2, x3, x4)  =  U8_gga(x1, x2, x4)
addcF_in_gga(x1, x2, x3)  =  addcF_in_gga(x1, x2)
addcF_out_gga(x1, x2, x3)  =  addcF_out_gga(x1, x2, x3)
U21_gga(x1, x2, x3)  =  U21_gga(x1, x3)
succZH_in_ga(x1, x2)  =  succZH_in_ga(x1)
U11_ga(x1, x2)  =  U11_ga(x1, x2)
succZH_out_ga(x1, x2)  =  succZH_out_ga(x1, x2)
U12_ga(x1, x2, x3)  =  U12_ga(x1, x3)
succG_in_ga(x1, x2)  =  succG_in_ga(x1)
succG_out_ga(x1, x2)  =  succG_out_ga(x1, x2)
U9_ga(x1, x2)  =  U9_ga(x1, x2)
U10_ga(x1, x2, x3)  =  U10_ga(x1, x3)
U22_gga(x1, x2, x3)  =  U22_gga(x1, x3)
U23_gga(x1, x2, x3, x4)  =  U23_gga(x1, x2, x4)
addCI_in_gga(x1, x2, x3)  =  addCI_in_gga(x1, x2)
U13_gga(x1, x2, x3, x4)  =  U13_gga(x1, x2, x4)
addzC_out_gga(x1, x2, x3)  =  addzC_out_gga(x1, x2, x3)
addCI_out_gga(x1, x2, x3)  =  addCI_out_gga(x1, x2, x3)
U14_gga(x1, x2)  =  U14_gga(x1, x2)
U15_gga(x1, x2, x3)  =  U15_gga(x1, x3)
U16_gga(x1, x2, x3, x4)  =  U16_gga(x1, x2, x4)
U17_gga(x1, x2)  =  U17_gga(x1, x2)
U18_gga(x1, x2, x3)  =  U18_gga(x1, x3)
U19_gga(x1, x2, x3, x4)  =  U19_gga(x1, x2, x4)
U20_gga(x1, x2, x3, x4)  =  U20_gga(x1, x2, x4)
U35_gga(x1, x2, x3, x4)  =  U35_gga(x1, x2, x4)
U36_gga(x1, x2, x3, x4)  =  U36_gga(x1, x2, x4)
U37_gga(x1, x2, x3, x4)  =  U37_gga(x1, x2, x4)
ADDJ_IN_GGA(x1, x2, x3)  =  ADDJ_IN_GGA(x1, x2)
U30_GGA(x1, x2)  =  U30_GGA(x1, x2)
BINARYZA_IN_G(x1)  =  BINARYZA_IN_G(x1)
U1_G(x1, x2)  =  U1_G(x1, x2)
U2_G(x1, x2)  =  U2_G(x1, x2)
BINARYB_IN_G(x1)  =  BINARYB_IN_G(x1)
U3_G(x1, x2)  =  U3_G(x1, x2)
U4_G(x1, x2)  =  U4_G(x1, x2)
U31_GGA(x1, x2)  =  U31_GGA(x1, x2)
U32_GGA(x1, x2)  =  U32_GGA(x1, x2)
U33_GGA(x1, x2)  =  U33_GGA(x1, x2)
U34_GGA(x1, x2, x3, x4)  =  U34_GGA(x1, x2, x4)
ADDZC_IN_GGA(x1, x2, x3)  =  ADDZC_IN_GGA(x1, x2)
U5_GGA(x1, x2, x3, x4)  =  U5_GGA(x1, x2, x4)
U6_GGA(x1, x2, x3, x4)  =  U6_GGA(x1, x2, x4)
ADDXD_IN_GGA(x1, x2, x3)  =  ADDXD_IN_GGA(x1, x2)
U24_GGA(x1, x2)  =  U24_GGA(x1, x2)
U25_GGA(x1, x2)  =  U25_GGA(x1, x2)
U26_GGA(x1, x2, x3, x4)  =  U26_GGA(x1, x2, x4)
U7_GGA(x1, x2, x3, x4)  =  U7_GGA(x1, x2, x4)
ADDYE_IN_GGA(x1, x2, x3)  =  ADDYE_IN_GGA(x1, x2)
U27_GGA(x1, x2)  =  U27_GGA(x1, x2)
U28_GGA(x1, x2)  =  U28_GGA(x1, x2)
U29_GGA(x1, x2, x3, x4)  =  U29_GGA(x1, x2, x4)
U8_GGA(x1, x2, x3, x4)  =  U8_GGA(x1, x2, x4)
ADDCF_IN_GGA(x1, x2, x3)  =  ADDCF_IN_GGA(x1, x2)
U21_GGA(x1, x2, x3)  =  U21_GGA(x1, x3)
SUCCZH_IN_GA(x1, x2)  =  SUCCZH_IN_GA(x1)
U11_GA(x1, x2)  =  U11_GA(x1, x2)
U12_GA(x1, x2, x3)  =  U12_GA(x1, x3)
SUCCG_IN_GA(x1, x2)  =  SUCCG_IN_GA(x1)
U9_GA(x1, x2)  =  U9_GA(x1, x2)
U10_GA(x1, x2, x3)  =  U10_GA(x1, x3)
U22_GGA(x1, x2, x3)  =  U22_GGA(x1, x3)
U23_GGA(x1, x2, x3, x4)  =  U23_GGA(x1, x2, x4)
ADDCI_IN_GGA(x1, x2, x3)  =  ADDCI_IN_GGA(x1, x2)
U13_GGA(x1, x2, x3, x4)  =  U13_GGA(x1, x2, x4)
U14_GGA(x1, x2)  =  U14_GGA(x1, x2)
U15_GGA(x1, x2, x3)  =  U15_GGA(x1, x3)
U16_GGA(x1, x2, x3, x4)  =  U16_GGA(x1, x2, x4)
U17_GGA(x1, x2)  =  U17_GGA(x1, x2)
U18_GGA(x1, x2, x3)  =  U18_GGA(x1, x3)
U19_GGA(x1, x2, x3, x4)  =  U19_GGA(x1, x2, x4)
U20_GGA(x1, x2, x3, x4)  =  U20_GGA(x1, x2, x4)
U35_GGA(x1, x2, x3, x4)  =  U35_GGA(x1, x2, x4)
U36_GGA(x1, x2, x3, x4)  =  U36_GGA(x1, x2, x4)
U37_GGA(x1, x2, x3, x4)  =  U37_GGA(x1, x2, x4)

We have to consider all (P,R,Pi)-chains

(7) DependencyGraphProof (EQUIVALENT transformation)

The approximation of the Dependency Graph [LOPSTR] contains 3 SCCs with 58 less nodes.

(8) Complex Obligation (AND)

(9) Obligation:

Pi DP problem:
The TRS P consists of the following rules:

BINARYZA_IN_G(one(T33)) → BINARYB_IN_G(T33)
BINARYB_IN_G(zero(T38)) → BINARYZA_IN_G(T38)
BINARYZA_IN_G(zero(T29)) → BINARYZA_IN_G(T29)
BINARYB_IN_G(one(T42)) → BINARYB_IN_G(T42)

The TRS R consists of the following rules:

addJ_in_gga(b, b, b) → addJ_out_gga(b, b, b)
addJ_in_gga(zero(T23), b, zero(T23)) → U30_gga(T23, binaryZA_in_g(T23))
binaryZA_in_g(zero(T29)) → U1_g(T29, binaryZA_in_g(T29))
binaryZA_in_g(one(T33)) → U2_g(T33, binaryB_in_g(T33))
binaryB_in_g(b) → binaryB_out_g(b)
binaryB_in_g(zero(T38)) → U3_g(T38, binaryZA_in_g(T38))
U3_g(T38, binaryZA_out_g(T38)) → binaryB_out_g(zero(T38))
binaryB_in_g(one(T42)) → U4_g(T42, binaryB_in_g(T42))
U4_g(T42, binaryB_out_g(T42)) → binaryB_out_g(one(T42))
U2_g(T33, binaryB_out_g(T33)) → binaryZA_out_g(one(T33))
U1_g(T29, binaryZA_out_g(T29)) → binaryZA_out_g(zero(T29))
U30_gga(T23, binaryZA_out_g(T23)) → addJ_out_gga(zero(T23), b, zero(T23))
addJ_in_gga(one(T47), b, one(T47)) → U31_gga(T47, binaryB_in_g(T47))
U31_gga(T47, binaryB_out_g(T47)) → addJ_out_gga(one(T47), b, one(T47))
addJ_in_gga(b, zero(T68), zero(T68)) → U32_gga(T68, binaryZA_in_g(T68))
U32_gga(T68, binaryZA_out_g(T68)) → addJ_out_gga(b, zero(T68), zero(T68))
addJ_in_gga(b, one(T74), one(T74)) → U33_gga(T74, binaryB_in_g(T74))
U33_gga(T74, binaryB_out_g(T74)) → addJ_out_gga(b, one(T74), one(T74))
addJ_in_gga(zero(T102), zero(T103), zero(T105)) → U34_gga(T102, T103, T105, addzC_in_gga(T102, T103, T105))
addzC_in_gga(zero(T121), zero(T122), zero(T124)) → U5_gga(T121, T122, T124, addzC_in_gga(T121, T122, T124))
addzC_in_gga(zero(T140), one(T141), one(T143)) → U6_gga(T140, T141, T143, addxD_in_gga(T140, T141, T143))
addxD_in_gga(one(T149), b, one(T149)) → U24_gga(T149, binaryB_in_g(T149))
U24_gga(T149, binaryB_out_g(T149)) → addxD_out_gga(one(T149), b, one(T149))
addxD_in_gga(zero(T154), b, zero(T154)) → U25_gga(T154, binaryZA_in_g(T154))
U25_gga(T154, binaryZA_out_g(T154)) → addxD_out_gga(zero(T154), b, zero(T154))
addxD_in_gga(T166, T167, T169) → U26_gga(T166, T167, T169, addzC_in_gga(T166, T167, T169))
addzC_in_gga(one(T185), zero(T186), one(T188)) → U7_gga(T185, T186, T188, addyE_in_gga(T185, T186, T188))
addyE_in_gga(b, one(T194), one(T194)) → U27_gga(T194, binaryB_in_g(T194))
U27_gga(T194, binaryB_out_g(T194)) → addyE_out_gga(b, one(T194), one(T194))
addyE_in_gga(b, zero(T199), zero(T199)) → U28_gga(T199, binaryZA_in_g(T199))
U28_gga(T199, binaryZA_out_g(T199)) → addyE_out_gga(b, zero(T199), zero(T199))
addyE_in_gga(T211, T212, T214) → U29_gga(T211, T212, T214, addzC_in_gga(T211, T212, T214))
addzC_in_gga(one(T224), one(T225), zero(T227)) → U8_gga(T224, T225, T227, addcF_in_gga(T224, T225, T227))
addcF_in_gga(b, b, one(b)) → addcF_out_gga(b, b, one(b))
addcF_in_gga(T236, b, T238) → U21_gga(T236, T238, succZH_in_ga(T236, T238))
succZH_in_ga(zero(T244), one(T244)) → U11_ga(T244, binaryZA_in_g(T244))
U11_ga(T244, binaryZA_out_g(T244)) → succZH_out_ga(zero(T244), one(T244))
succZH_in_ga(one(T250), zero(T252)) → U12_ga(T250, T252, succG_in_ga(T250, T252))
succG_in_ga(b, one(b)) → succG_out_ga(b, one(b))
succG_in_ga(zero(T257), one(T257)) → U9_ga(T257, binaryZA_in_g(T257))
U9_ga(T257, binaryZA_out_g(T257)) → succG_out_ga(zero(T257), one(T257))
succG_in_ga(one(T263), zero(T265)) → U10_ga(T263, T265, succG_in_ga(T263, T265))
U10_ga(T263, T265, succG_out_ga(T263, T265)) → succG_out_ga(one(T263), zero(T265))
U12_ga(T250, T252, succG_out_ga(T250, T252)) → succZH_out_ga(one(T250), zero(T252))
U21_gga(T236, T238, succZH_out_ga(T236, T238)) → addcF_out_gga(T236, b, T238)
addcF_in_gga(b, T274, T276) → U22_gga(T274, T276, succZH_in_ga(T274, T276))
U22_gga(T274, T276, succZH_out_ga(T274, T276)) → addcF_out_gga(b, T274, T276)
addcF_in_gga(T288, T289, T291) → U23_gga(T288, T289, T291, addCI_in_gga(T288, T289, T291))
addCI_in_gga(zero(T307), zero(T308), one(T310)) → U13_gga(T307, T308, T310, addzC_in_gga(T307, T308, T310))
U13_gga(T307, T308, T310, addzC_out_gga(T307, T308, T310)) → addCI_out_gga(zero(T307), zero(T308), one(T310))
addCI_in_gga(zero(zero(T335)), one(b), zero(one(T335))) → U14_gga(T335, binaryZA_in_g(T335))
U14_gga(T335, binaryZA_out_g(T335)) → addCI_out_gga(zero(zero(T335)), one(b), zero(one(T335)))
addCI_in_gga(zero(one(T345)), one(b), zero(zero(T347))) → U15_gga(T345, T347, succG_in_ga(T345, T347))
U15_gga(T345, T347, succG_out_ga(T345, T347)) → addCI_out_gga(zero(one(T345)), one(b), zero(zero(T347)))
addCI_in_gga(zero(T358), one(T359), zero(T361)) → U16_gga(T358, T359, T361, addCI_in_gga(T358, T359, T361))
addCI_in_gga(one(b), zero(zero(T386)), zero(one(T386))) → U17_gga(T386, binaryZA_in_g(T386))
U17_gga(T386, binaryZA_out_g(T386)) → addCI_out_gga(one(b), zero(zero(T386)), zero(one(T386)))
addCI_in_gga(one(b), zero(one(T396)), zero(zero(T398))) → U18_gga(T396, T398, succG_in_ga(T396, T398))
U18_gga(T396, T398, succG_out_ga(T396, T398)) → addCI_out_gga(one(b), zero(one(T396)), zero(zero(T398)))
addCI_in_gga(one(T409), zero(T410), zero(T412)) → U19_gga(T409, T410, T412, addCI_in_gga(T409, T410, T412))
addCI_in_gga(one(T422), one(T423), one(T425)) → U20_gga(T422, T423, T425, addcF_in_gga(T422, T423, T425))
U20_gga(T422, T423, T425, addcF_out_gga(T422, T423, T425)) → addCI_out_gga(one(T422), one(T423), one(T425))
U19_gga(T409, T410, T412, addCI_out_gga(T409, T410, T412)) → addCI_out_gga(one(T409), zero(T410), zero(T412))
U16_gga(T358, T359, T361, addCI_out_gga(T358, T359, T361)) → addCI_out_gga(zero(T358), one(T359), zero(T361))
U23_gga(T288, T289, T291, addCI_out_gga(T288, T289, T291)) → addcF_out_gga(T288, T289, T291)
U8_gga(T224, T225, T227, addcF_out_gga(T224, T225, T227)) → addzC_out_gga(one(T224), one(T225), zero(T227))
U29_gga(T211, T212, T214, addzC_out_gga(T211, T212, T214)) → addyE_out_gga(T211, T212, T214)
U7_gga(T185, T186, T188, addyE_out_gga(T185, T186, T188)) → addzC_out_gga(one(T185), zero(T186), one(T188))
U26_gga(T166, T167, T169, addzC_out_gga(T166, T167, T169)) → addxD_out_gga(T166, T167, T169)
U6_gga(T140, T141, T143, addxD_out_gga(T140, T141, T143)) → addzC_out_gga(zero(T140), one(T141), one(T143))
U5_gga(T121, T122, T124, addzC_out_gga(T121, T122, T124)) → addzC_out_gga(zero(T121), zero(T122), zero(T124))
U34_gga(T102, T103, T105, addzC_out_gga(T102, T103, T105)) → addJ_out_gga(zero(T102), zero(T103), zero(T105))
addJ_in_gga(zero(T438), one(T439), one(T441)) → U35_gga(T438, T439, T441, addxD_in_gga(T438, T439, T441))
U35_gga(T438, T439, T441, addxD_out_gga(T438, T439, T441)) → addJ_out_gga(zero(T438), one(T439), one(T441))
addJ_in_gga(one(T455), zero(T456), one(T458)) → U36_gga(T455, T456, T458, addyE_in_gga(T455, T456, T458))
U36_gga(T455, T456, T458, addyE_out_gga(T455, T456, T458)) → addJ_out_gga(one(T455), zero(T456), one(T458))
addJ_in_gga(one(T466), one(T467), zero(T469)) → U37_gga(T466, T467, T469, addcF_in_gga(T466, T467, T469))
U37_gga(T466, T467, T469, addcF_out_gga(T466, T467, T469)) → addJ_out_gga(one(T466), one(T467), zero(T469))

The argument filtering Pi contains the following mapping:
addJ_in_gga(x1, x2, x3)  =  addJ_in_gga(x1, x2)
b  =  b
addJ_out_gga(x1, x2, x3)  =  addJ_out_gga(x1, x2, x3)
zero(x1)  =  zero(x1)
U30_gga(x1, x2)  =  U30_gga(x1, x2)
binaryZA_in_g(x1)  =  binaryZA_in_g(x1)
U1_g(x1, x2)  =  U1_g(x1, x2)
one(x1)  =  one(x1)
U2_g(x1, x2)  =  U2_g(x1, x2)
binaryB_in_g(x1)  =  binaryB_in_g(x1)
binaryB_out_g(x1)  =  binaryB_out_g(x1)
U3_g(x1, x2)  =  U3_g(x1, x2)
binaryZA_out_g(x1)  =  binaryZA_out_g(x1)
U4_g(x1, x2)  =  U4_g(x1, x2)
U31_gga(x1, x2)  =  U31_gga(x1, x2)
U32_gga(x1, x2)  =  U32_gga(x1, x2)
U33_gga(x1, x2)  =  U33_gga(x1, x2)
U34_gga(x1, x2, x3, x4)  =  U34_gga(x1, x2, x4)
addzC_in_gga(x1, x2, x3)  =  addzC_in_gga(x1, x2)
U5_gga(x1, x2, x3, x4)  =  U5_gga(x1, x2, x4)
U6_gga(x1, x2, x3, x4)  =  U6_gga(x1, x2, x4)
addxD_in_gga(x1, x2, x3)  =  addxD_in_gga(x1, x2)
U24_gga(x1, x2)  =  U24_gga(x1, x2)
addxD_out_gga(x1, x2, x3)  =  addxD_out_gga(x1, x2, x3)
U25_gga(x1, x2)  =  U25_gga(x1, x2)
U26_gga(x1, x2, x3, x4)  =  U26_gga(x1, x2, x4)
U7_gga(x1, x2, x3, x4)  =  U7_gga(x1, x2, x4)
addyE_in_gga(x1, x2, x3)  =  addyE_in_gga(x1, x2)
U27_gga(x1, x2)  =  U27_gga(x1, x2)
addyE_out_gga(x1, x2, x3)  =  addyE_out_gga(x1, x2, x3)
U28_gga(x1, x2)  =  U28_gga(x1, x2)
U29_gga(x1, x2, x3, x4)  =  U29_gga(x1, x2, x4)
U8_gga(x1, x2, x3, x4)  =  U8_gga(x1, x2, x4)
addcF_in_gga(x1, x2, x3)  =  addcF_in_gga(x1, x2)
addcF_out_gga(x1, x2, x3)  =  addcF_out_gga(x1, x2, x3)
U21_gga(x1, x2, x3)  =  U21_gga(x1, x3)
succZH_in_ga(x1, x2)  =  succZH_in_ga(x1)
U11_ga(x1, x2)  =  U11_ga(x1, x2)
succZH_out_ga(x1, x2)  =  succZH_out_ga(x1, x2)
U12_ga(x1, x2, x3)  =  U12_ga(x1, x3)
succG_in_ga(x1, x2)  =  succG_in_ga(x1)
succG_out_ga(x1, x2)  =  succG_out_ga(x1, x2)
U9_ga(x1, x2)  =  U9_ga(x1, x2)
U10_ga(x1, x2, x3)  =  U10_ga(x1, x3)
U22_gga(x1, x2, x3)  =  U22_gga(x1, x3)
U23_gga(x1, x2, x3, x4)  =  U23_gga(x1, x2, x4)
addCI_in_gga(x1, x2, x3)  =  addCI_in_gga(x1, x2)
U13_gga(x1, x2, x3, x4)  =  U13_gga(x1, x2, x4)
addzC_out_gga(x1, x2, x3)  =  addzC_out_gga(x1, x2, x3)
addCI_out_gga(x1, x2, x3)  =  addCI_out_gga(x1, x2, x3)
U14_gga(x1, x2)  =  U14_gga(x1, x2)
U15_gga(x1, x2, x3)  =  U15_gga(x1, x3)
U16_gga(x1, x2, x3, x4)  =  U16_gga(x1, x2, x4)
U17_gga(x1, x2)  =  U17_gga(x1, x2)
U18_gga(x1, x2, x3)  =  U18_gga(x1, x3)
U19_gga(x1, x2, x3, x4)  =  U19_gga(x1, x2, x4)
U20_gga(x1, x2, x3, x4)  =  U20_gga(x1, x2, x4)
U35_gga(x1, x2, x3, x4)  =  U35_gga(x1, x2, x4)
U36_gga(x1, x2, x3, x4)  =  U36_gga(x1, x2, x4)
U37_gga(x1, x2, x3, x4)  =  U37_gga(x1, x2, x4)
BINARYZA_IN_G(x1)  =  BINARYZA_IN_G(x1)
BINARYB_IN_G(x1)  =  BINARYB_IN_G(x1)

We have to consider all (P,R,Pi)-chains

(10) UsableRulesProof (EQUIVALENT transformation)

For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R.

(11) Obligation:

Pi DP problem:
The TRS P consists of the following rules:

BINARYZA_IN_G(one(T33)) → BINARYB_IN_G(T33)
BINARYB_IN_G(zero(T38)) → BINARYZA_IN_G(T38)
BINARYZA_IN_G(zero(T29)) → BINARYZA_IN_G(T29)
BINARYB_IN_G(one(T42)) → BINARYB_IN_G(T42)

R is empty.
Pi is empty.
We have to consider all (P,R,Pi)-chains

(12) PiDPToQDPProof (EQUIVALENT transformation)

Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi.

(13) Obligation:

Q DP problem:
The TRS P consists of the following rules:

BINARYZA_IN_G(one(T33)) → BINARYB_IN_G(T33)
BINARYB_IN_G(zero(T38)) → BINARYZA_IN_G(T38)
BINARYZA_IN_G(zero(T29)) → BINARYZA_IN_G(T29)
BINARYB_IN_G(one(T42)) → BINARYB_IN_G(T42)

R is empty.
Q is empty.
We have to consider all (P,Q,R)-chains.

(14) QDPSizeChangeProof (EQUIVALENT transformation)

By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:

  • BINARYB_IN_G(zero(T38)) → BINARYZA_IN_G(T38)
    The graph contains the following edges 1 > 1

  • BINARYB_IN_G(one(T42)) → BINARYB_IN_G(T42)
    The graph contains the following edges 1 > 1

  • BINARYZA_IN_G(zero(T29)) → BINARYZA_IN_G(T29)
    The graph contains the following edges 1 > 1

  • BINARYZA_IN_G(one(T33)) → BINARYB_IN_G(T33)
    The graph contains the following edges 1 > 1

(15) YES

(16) Obligation:

Pi DP problem:
The TRS P consists of the following rules:

SUCCG_IN_GA(one(T263), zero(T265)) → SUCCG_IN_GA(T263, T265)

The TRS R consists of the following rules:

addJ_in_gga(b, b, b) → addJ_out_gga(b, b, b)
addJ_in_gga(zero(T23), b, zero(T23)) → U30_gga(T23, binaryZA_in_g(T23))
binaryZA_in_g(zero(T29)) → U1_g(T29, binaryZA_in_g(T29))
binaryZA_in_g(one(T33)) → U2_g(T33, binaryB_in_g(T33))
binaryB_in_g(b) → binaryB_out_g(b)
binaryB_in_g(zero(T38)) → U3_g(T38, binaryZA_in_g(T38))
U3_g(T38, binaryZA_out_g(T38)) → binaryB_out_g(zero(T38))
binaryB_in_g(one(T42)) → U4_g(T42, binaryB_in_g(T42))
U4_g(T42, binaryB_out_g(T42)) → binaryB_out_g(one(T42))
U2_g(T33, binaryB_out_g(T33)) → binaryZA_out_g(one(T33))
U1_g(T29, binaryZA_out_g(T29)) → binaryZA_out_g(zero(T29))
U30_gga(T23, binaryZA_out_g(T23)) → addJ_out_gga(zero(T23), b, zero(T23))
addJ_in_gga(one(T47), b, one(T47)) → U31_gga(T47, binaryB_in_g(T47))
U31_gga(T47, binaryB_out_g(T47)) → addJ_out_gga(one(T47), b, one(T47))
addJ_in_gga(b, zero(T68), zero(T68)) → U32_gga(T68, binaryZA_in_g(T68))
U32_gga(T68, binaryZA_out_g(T68)) → addJ_out_gga(b, zero(T68), zero(T68))
addJ_in_gga(b, one(T74), one(T74)) → U33_gga(T74, binaryB_in_g(T74))
U33_gga(T74, binaryB_out_g(T74)) → addJ_out_gga(b, one(T74), one(T74))
addJ_in_gga(zero(T102), zero(T103), zero(T105)) → U34_gga(T102, T103, T105, addzC_in_gga(T102, T103, T105))
addzC_in_gga(zero(T121), zero(T122), zero(T124)) → U5_gga(T121, T122, T124, addzC_in_gga(T121, T122, T124))
addzC_in_gga(zero(T140), one(T141), one(T143)) → U6_gga(T140, T141, T143, addxD_in_gga(T140, T141, T143))
addxD_in_gga(one(T149), b, one(T149)) → U24_gga(T149, binaryB_in_g(T149))
U24_gga(T149, binaryB_out_g(T149)) → addxD_out_gga(one(T149), b, one(T149))
addxD_in_gga(zero(T154), b, zero(T154)) → U25_gga(T154, binaryZA_in_g(T154))
U25_gga(T154, binaryZA_out_g(T154)) → addxD_out_gga(zero(T154), b, zero(T154))
addxD_in_gga(T166, T167, T169) → U26_gga(T166, T167, T169, addzC_in_gga(T166, T167, T169))
addzC_in_gga(one(T185), zero(T186), one(T188)) → U7_gga(T185, T186, T188, addyE_in_gga(T185, T186, T188))
addyE_in_gga(b, one(T194), one(T194)) → U27_gga(T194, binaryB_in_g(T194))
U27_gga(T194, binaryB_out_g(T194)) → addyE_out_gga(b, one(T194), one(T194))
addyE_in_gga(b, zero(T199), zero(T199)) → U28_gga(T199, binaryZA_in_g(T199))
U28_gga(T199, binaryZA_out_g(T199)) → addyE_out_gga(b, zero(T199), zero(T199))
addyE_in_gga(T211, T212, T214) → U29_gga(T211, T212, T214, addzC_in_gga(T211, T212, T214))
addzC_in_gga(one(T224), one(T225), zero(T227)) → U8_gga(T224, T225, T227, addcF_in_gga(T224, T225, T227))
addcF_in_gga(b, b, one(b)) → addcF_out_gga(b, b, one(b))
addcF_in_gga(T236, b, T238) → U21_gga(T236, T238, succZH_in_ga(T236, T238))
succZH_in_ga(zero(T244), one(T244)) → U11_ga(T244, binaryZA_in_g(T244))
U11_ga(T244, binaryZA_out_g(T244)) → succZH_out_ga(zero(T244), one(T244))
succZH_in_ga(one(T250), zero(T252)) → U12_ga(T250, T252, succG_in_ga(T250, T252))
succG_in_ga(b, one(b)) → succG_out_ga(b, one(b))
succG_in_ga(zero(T257), one(T257)) → U9_ga(T257, binaryZA_in_g(T257))
U9_ga(T257, binaryZA_out_g(T257)) → succG_out_ga(zero(T257), one(T257))
succG_in_ga(one(T263), zero(T265)) → U10_ga(T263, T265, succG_in_ga(T263, T265))
U10_ga(T263, T265, succG_out_ga(T263, T265)) → succG_out_ga(one(T263), zero(T265))
U12_ga(T250, T252, succG_out_ga(T250, T252)) → succZH_out_ga(one(T250), zero(T252))
U21_gga(T236, T238, succZH_out_ga(T236, T238)) → addcF_out_gga(T236, b, T238)
addcF_in_gga(b, T274, T276) → U22_gga(T274, T276, succZH_in_ga(T274, T276))
U22_gga(T274, T276, succZH_out_ga(T274, T276)) → addcF_out_gga(b, T274, T276)
addcF_in_gga(T288, T289, T291) → U23_gga(T288, T289, T291, addCI_in_gga(T288, T289, T291))
addCI_in_gga(zero(T307), zero(T308), one(T310)) → U13_gga(T307, T308, T310, addzC_in_gga(T307, T308, T310))
U13_gga(T307, T308, T310, addzC_out_gga(T307, T308, T310)) → addCI_out_gga(zero(T307), zero(T308), one(T310))
addCI_in_gga(zero(zero(T335)), one(b), zero(one(T335))) → U14_gga(T335, binaryZA_in_g(T335))
U14_gga(T335, binaryZA_out_g(T335)) → addCI_out_gga(zero(zero(T335)), one(b), zero(one(T335)))
addCI_in_gga(zero(one(T345)), one(b), zero(zero(T347))) → U15_gga(T345, T347, succG_in_ga(T345, T347))
U15_gga(T345, T347, succG_out_ga(T345, T347)) → addCI_out_gga(zero(one(T345)), one(b), zero(zero(T347)))
addCI_in_gga(zero(T358), one(T359), zero(T361)) → U16_gga(T358, T359, T361, addCI_in_gga(T358, T359, T361))
addCI_in_gga(one(b), zero(zero(T386)), zero(one(T386))) → U17_gga(T386, binaryZA_in_g(T386))
U17_gga(T386, binaryZA_out_g(T386)) → addCI_out_gga(one(b), zero(zero(T386)), zero(one(T386)))
addCI_in_gga(one(b), zero(one(T396)), zero(zero(T398))) → U18_gga(T396, T398, succG_in_ga(T396, T398))
U18_gga(T396, T398, succG_out_ga(T396, T398)) → addCI_out_gga(one(b), zero(one(T396)), zero(zero(T398)))
addCI_in_gga(one(T409), zero(T410), zero(T412)) → U19_gga(T409, T410, T412, addCI_in_gga(T409, T410, T412))
addCI_in_gga(one(T422), one(T423), one(T425)) → U20_gga(T422, T423, T425, addcF_in_gga(T422, T423, T425))
U20_gga(T422, T423, T425, addcF_out_gga(T422, T423, T425)) → addCI_out_gga(one(T422), one(T423), one(T425))
U19_gga(T409, T410, T412, addCI_out_gga(T409, T410, T412)) → addCI_out_gga(one(T409), zero(T410), zero(T412))
U16_gga(T358, T359, T361, addCI_out_gga(T358, T359, T361)) → addCI_out_gga(zero(T358), one(T359), zero(T361))
U23_gga(T288, T289, T291, addCI_out_gga(T288, T289, T291)) → addcF_out_gga(T288, T289, T291)
U8_gga(T224, T225, T227, addcF_out_gga(T224, T225, T227)) → addzC_out_gga(one(T224), one(T225), zero(T227))
U29_gga(T211, T212, T214, addzC_out_gga(T211, T212, T214)) → addyE_out_gga(T211, T212, T214)
U7_gga(T185, T186, T188, addyE_out_gga(T185, T186, T188)) → addzC_out_gga(one(T185), zero(T186), one(T188))
U26_gga(T166, T167, T169, addzC_out_gga(T166, T167, T169)) → addxD_out_gga(T166, T167, T169)
U6_gga(T140, T141, T143, addxD_out_gga(T140, T141, T143)) → addzC_out_gga(zero(T140), one(T141), one(T143))
U5_gga(T121, T122, T124, addzC_out_gga(T121, T122, T124)) → addzC_out_gga(zero(T121), zero(T122), zero(T124))
U34_gga(T102, T103, T105, addzC_out_gga(T102, T103, T105)) → addJ_out_gga(zero(T102), zero(T103), zero(T105))
addJ_in_gga(zero(T438), one(T439), one(T441)) → U35_gga(T438, T439, T441, addxD_in_gga(T438, T439, T441))
U35_gga(T438, T439, T441, addxD_out_gga(T438, T439, T441)) → addJ_out_gga(zero(T438), one(T439), one(T441))
addJ_in_gga(one(T455), zero(T456), one(T458)) → U36_gga(T455, T456, T458, addyE_in_gga(T455, T456, T458))
U36_gga(T455, T456, T458, addyE_out_gga(T455, T456, T458)) → addJ_out_gga(one(T455), zero(T456), one(T458))
addJ_in_gga(one(T466), one(T467), zero(T469)) → U37_gga(T466, T467, T469, addcF_in_gga(T466, T467, T469))
U37_gga(T466, T467, T469, addcF_out_gga(T466, T467, T469)) → addJ_out_gga(one(T466), one(T467), zero(T469))

The argument filtering Pi contains the following mapping:
addJ_in_gga(x1, x2, x3)  =  addJ_in_gga(x1, x2)
b  =  b
addJ_out_gga(x1, x2, x3)  =  addJ_out_gga(x1, x2, x3)
zero(x1)  =  zero(x1)
U30_gga(x1, x2)  =  U30_gga(x1, x2)
binaryZA_in_g(x1)  =  binaryZA_in_g(x1)
U1_g(x1, x2)  =  U1_g(x1, x2)
one(x1)  =  one(x1)
U2_g(x1, x2)  =  U2_g(x1, x2)
binaryB_in_g(x1)  =  binaryB_in_g(x1)
binaryB_out_g(x1)  =  binaryB_out_g(x1)
U3_g(x1, x2)  =  U3_g(x1, x2)
binaryZA_out_g(x1)  =  binaryZA_out_g(x1)
U4_g(x1, x2)  =  U4_g(x1, x2)
U31_gga(x1, x2)  =  U31_gga(x1, x2)
U32_gga(x1, x2)  =  U32_gga(x1, x2)
U33_gga(x1, x2)  =  U33_gga(x1, x2)
U34_gga(x1, x2, x3, x4)  =  U34_gga(x1, x2, x4)
addzC_in_gga(x1, x2, x3)  =  addzC_in_gga(x1, x2)
U5_gga(x1, x2, x3, x4)  =  U5_gga(x1, x2, x4)
U6_gga(x1, x2, x3, x4)  =  U6_gga(x1, x2, x4)
addxD_in_gga(x1, x2, x3)  =  addxD_in_gga(x1, x2)
U24_gga(x1, x2)  =  U24_gga(x1, x2)
addxD_out_gga(x1, x2, x3)  =  addxD_out_gga(x1, x2, x3)
U25_gga(x1, x2)  =  U25_gga(x1, x2)
U26_gga(x1, x2, x3, x4)  =  U26_gga(x1, x2, x4)
U7_gga(x1, x2, x3, x4)  =  U7_gga(x1, x2, x4)
addyE_in_gga(x1, x2, x3)  =  addyE_in_gga(x1, x2)
U27_gga(x1, x2)  =  U27_gga(x1, x2)
addyE_out_gga(x1, x2, x3)  =  addyE_out_gga(x1, x2, x3)
U28_gga(x1, x2)  =  U28_gga(x1, x2)
U29_gga(x1, x2, x3, x4)  =  U29_gga(x1, x2, x4)
U8_gga(x1, x2, x3, x4)  =  U8_gga(x1, x2, x4)
addcF_in_gga(x1, x2, x3)  =  addcF_in_gga(x1, x2)
addcF_out_gga(x1, x2, x3)  =  addcF_out_gga(x1, x2, x3)
U21_gga(x1, x2, x3)  =  U21_gga(x1, x3)
succZH_in_ga(x1, x2)  =  succZH_in_ga(x1)
U11_ga(x1, x2)  =  U11_ga(x1, x2)
succZH_out_ga(x1, x2)  =  succZH_out_ga(x1, x2)
U12_ga(x1, x2, x3)  =  U12_ga(x1, x3)
succG_in_ga(x1, x2)  =  succG_in_ga(x1)
succG_out_ga(x1, x2)  =  succG_out_ga(x1, x2)
U9_ga(x1, x2)  =  U9_ga(x1, x2)
U10_ga(x1, x2, x3)  =  U10_ga(x1, x3)
U22_gga(x1, x2, x3)  =  U22_gga(x1, x3)
U23_gga(x1, x2, x3, x4)  =  U23_gga(x1, x2, x4)
addCI_in_gga(x1, x2, x3)  =  addCI_in_gga(x1, x2)
U13_gga(x1, x2, x3, x4)  =  U13_gga(x1, x2, x4)
addzC_out_gga(x1, x2, x3)  =  addzC_out_gga(x1, x2, x3)
addCI_out_gga(x1, x2, x3)  =  addCI_out_gga(x1, x2, x3)
U14_gga(x1, x2)  =  U14_gga(x1, x2)
U15_gga(x1, x2, x3)  =  U15_gga(x1, x3)
U16_gga(x1, x2, x3, x4)  =  U16_gga(x1, x2, x4)
U17_gga(x1, x2)  =  U17_gga(x1, x2)
U18_gga(x1, x2, x3)  =  U18_gga(x1, x3)
U19_gga(x1, x2, x3, x4)  =  U19_gga(x1, x2, x4)
U20_gga(x1, x2, x3, x4)  =  U20_gga(x1, x2, x4)
U35_gga(x1, x2, x3, x4)  =  U35_gga(x1, x2, x4)
U36_gga(x1, x2, x3, x4)  =  U36_gga(x1, x2, x4)
U37_gga(x1, x2, x3, x4)  =  U37_gga(x1, x2, x4)
SUCCG_IN_GA(x1, x2)  =  SUCCG_IN_GA(x1)

We have to consider all (P,R,Pi)-chains

(17) UsableRulesProof (EQUIVALENT transformation)

For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R.

(18) Obligation:

Pi DP problem:
The TRS P consists of the following rules:

SUCCG_IN_GA(one(T263), zero(T265)) → SUCCG_IN_GA(T263, T265)

R is empty.
The argument filtering Pi contains the following mapping:
zero(x1)  =  zero(x1)
one(x1)  =  one(x1)
SUCCG_IN_GA(x1, x2)  =  SUCCG_IN_GA(x1)

We have to consider all (P,R,Pi)-chains

(19) PiDPToQDPProof (SOUND transformation)

Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi.

(20) Obligation:

Q DP problem:
The TRS P consists of the following rules:

SUCCG_IN_GA(one(T263)) → SUCCG_IN_GA(T263)

R is empty.
Q is empty.
We have to consider all (P,Q,R)-chains.

(21) QDPSizeChangeProof (EQUIVALENT transformation)

By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:

  • SUCCG_IN_GA(one(T263)) → SUCCG_IN_GA(T263)
    The graph contains the following edges 1 > 1

(22) YES

(23) Obligation:

Pi DP problem:
The TRS P consists of the following rules:

ADDXD_IN_GGA(T166, T167, T169) → ADDZC_IN_GGA(T166, T167, T169)
ADDZC_IN_GGA(zero(T121), zero(T122), zero(T124)) → ADDZC_IN_GGA(T121, T122, T124)
ADDZC_IN_GGA(zero(T140), one(T141), one(T143)) → ADDXD_IN_GGA(T140, T141, T143)
ADDZC_IN_GGA(one(T185), zero(T186), one(T188)) → ADDYE_IN_GGA(T185, T186, T188)
ADDYE_IN_GGA(T211, T212, T214) → ADDZC_IN_GGA(T211, T212, T214)
ADDZC_IN_GGA(one(T224), one(T225), zero(T227)) → ADDCF_IN_GGA(T224, T225, T227)
ADDCF_IN_GGA(T288, T289, T291) → ADDCI_IN_GGA(T288, T289, T291)
ADDCI_IN_GGA(zero(T307), zero(T308), one(T310)) → ADDZC_IN_GGA(T307, T308, T310)
ADDCI_IN_GGA(zero(T358), one(T359), zero(T361)) → ADDCI_IN_GGA(T358, T359, T361)
ADDCI_IN_GGA(one(T409), zero(T410), zero(T412)) → ADDCI_IN_GGA(T409, T410, T412)
ADDCI_IN_GGA(one(T422), one(T423), one(T425)) → ADDCF_IN_GGA(T422, T423, T425)

The TRS R consists of the following rules:

addJ_in_gga(b, b, b) → addJ_out_gga(b, b, b)
addJ_in_gga(zero(T23), b, zero(T23)) → U30_gga(T23, binaryZA_in_g(T23))
binaryZA_in_g(zero(T29)) → U1_g(T29, binaryZA_in_g(T29))
binaryZA_in_g(one(T33)) → U2_g(T33, binaryB_in_g(T33))
binaryB_in_g(b) → binaryB_out_g(b)
binaryB_in_g(zero(T38)) → U3_g(T38, binaryZA_in_g(T38))
U3_g(T38, binaryZA_out_g(T38)) → binaryB_out_g(zero(T38))
binaryB_in_g(one(T42)) → U4_g(T42, binaryB_in_g(T42))
U4_g(T42, binaryB_out_g(T42)) → binaryB_out_g(one(T42))
U2_g(T33, binaryB_out_g(T33)) → binaryZA_out_g(one(T33))
U1_g(T29, binaryZA_out_g(T29)) → binaryZA_out_g(zero(T29))
U30_gga(T23, binaryZA_out_g(T23)) → addJ_out_gga(zero(T23), b, zero(T23))
addJ_in_gga(one(T47), b, one(T47)) → U31_gga(T47, binaryB_in_g(T47))
U31_gga(T47, binaryB_out_g(T47)) → addJ_out_gga(one(T47), b, one(T47))
addJ_in_gga(b, zero(T68), zero(T68)) → U32_gga(T68, binaryZA_in_g(T68))
U32_gga(T68, binaryZA_out_g(T68)) → addJ_out_gga(b, zero(T68), zero(T68))
addJ_in_gga(b, one(T74), one(T74)) → U33_gga(T74, binaryB_in_g(T74))
U33_gga(T74, binaryB_out_g(T74)) → addJ_out_gga(b, one(T74), one(T74))
addJ_in_gga(zero(T102), zero(T103), zero(T105)) → U34_gga(T102, T103, T105, addzC_in_gga(T102, T103, T105))
addzC_in_gga(zero(T121), zero(T122), zero(T124)) → U5_gga(T121, T122, T124, addzC_in_gga(T121, T122, T124))
addzC_in_gga(zero(T140), one(T141), one(T143)) → U6_gga(T140, T141, T143, addxD_in_gga(T140, T141, T143))
addxD_in_gga(one(T149), b, one(T149)) → U24_gga(T149, binaryB_in_g(T149))
U24_gga(T149, binaryB_out_g(T149)) → addxD_out_gga(one(T149), b, one(T149))
addxD_in_gga(zero(T154), b, zero(T154)) → U25_gga(T154, binaryZA_in_g(T154))
U25_gga(T154, binaryZA_out_g(T154)) → addxD_out_gga(zero(T154), b, zero(T154))
addxD_in_gga(T166, T167, T169) → U26_gga(T166, T167, T169, addzC_in_gga(T166, T167, T169))
addzC_in_gga(one(T185), zero(T186), one(T188)) → U7_gga(T185, T186, T188, addyE_in_gga(T185, T186, T188))
addyE_in_gga(b, one(T194), one(T194)) → U27_gga(T194, binaryB_in_g(T194))
U27_gga(T194, binaryB_out_g(T194)) → addyE_out_gga(b, one(T194), one(T194))
addyE_in_gga(b, zero(T199), zero(T199)) → U28_gga(T199, binaryZA_in_g(T199))
U28_gga(T199, binaryZA_out_g(T199)) → addyE_out_gga(b, zero(T199), zero(T199))
addyE_in_gga(T211, T212, T214) → U29_gga(T211, T212, T214, addzC_in_gga(T211, T212, T214))
addzC_in_gga(one(T224), one(T225), zero(T227)) → U8_gga(T224, T225, T227, addcF_in_gga(T224, T225, T227))
addcF_in_gga(b, b, one(b)) → addcF_out_gga(b, b, one(b))
addcF_in_gga(T236, b, T238) → U21_gga(T236, T238, succZH_in_ga(T236, T238))
succZH_in_ga(zero(T244), one(T244)) → U11_ga(T244, binaryZA_in_g(T244))
U11_ga(T244, binaryZA_out_g(T244)) → succZH_out_ga(zero(T244), one(T244))
succZH_in_ga(one(T250), zero(T252)) → U12_ga(T250, T252, succG_in_ga(T250, T252))
succG_in_ga(b, one(b)) → succG_out_ga(b, one(b))
succG_in_ga(zero(T257), one(T257)) → U9_ga(T257, binaryZA_in_g(T257))
U9_ga(T257, binaryZA_out_g(T257)) → succG_out_ga(zero(T257), one(T257))
succG_in_ga(one(T263), zero(T265)) → U10_ga(T263, T265, succG_in_ga(T263, T265))
U10_ga(T263, T265, succG_out_ga(T263, T265)) → succG_out_ga(one(T263), zero(T265))
U12_ga(T250, T252, succG_out_ga(T250, T252)) → succZH_out_ga(one(T250), zero(T252))
U21_gga(T236, T238, succZH_out_ga(T236, T238)) → addcF_out_gga(T236, b, T238)
addcF_in_gga(b, T274, T276) → U22_gga(T274, T276, succZH_in_ga(T274, T276))
U22_gga(T274, T276, succZH_out_ga(T274, T276)) → addcF_out_gga(b, T274, T276)
addcF_in_gga(T288, T289, T291) → U23_gga(T288, T289, T291, addCI_in_gga(T288, T289, T291))
addCI_in_gga(zero(T307), zero(T308), one(T310)) → U13_gga(T307, T308, T310, addzC_in_gga(T307, T308, T310))
U13_gga(T307, T308, T310, addzC_out_gga(T307, T308, T310)) → addCI_out_gga(zero(T307), zero(T308), one(T310))
addCI_in_gga(zero(zero(T335)), one(b), zero(one(T335))) → U14_gga(T335, binaryZA_in_g(T335))
U14_gga(T335, binaryZA_out_g(T335)) → addCI_out_gga(zero(zero(T335)), one(b), zero(one(T335)))
addCI_in_gga(zero(one(T345)), one(b), zero(zero(T347))) → U15_gga(T345, T347, succG_in_ga(T345, T347))
U15_gga(T345, T347, succG_out_ga(T345, T347)) → addCI_out_gga(zero(one(T345)), one(b), zero(zero(T347)))
addCI_in_gga(zero(T358), one(T359), zero(T361)) → U16_gga(T358, T359, T361, addCI_in_gga(T358, T359, T361))
addCI_in_gga(one(b), zero(zero(T386)), zero(one(T386))) → U17_gga(T386, binaryZA_in_g(T386))
U17_gga(T386, binaryZA_out_g(T386)) → addCI_out_gga(one(b), zero(zero(T386)), zero(one(T386)))
addCI_in_gga(one(b), zero(one(T396)), zero(zero(T398))) → U18_gga(T396, T398, succG_in_ga(T396, T398))
U18_gga(T396, T398, succG_out_ga(T396, T398)) → addCI_out_gga(one(b), zero(one(T396)), zero(zero(T398)))
addCI_in_gga(one(T409), zero(T410), zero(T412)) → U19_gga(T409, T410, T412, addCI_in_gga(T409, T410, T412))
addCI_in_gga(one(T422), one(T423), one(T425)) → U20_gga(T422, T423, T425, addcF_in_gga(T422, T423, T425))
U20_gga(T422, T423, T425, addcF_out_gga(T422, T423, T425)) → addCI_out_gga(one(T422), one(T423), one(T425))
U19_gga(T409, T410, T412, addCI_out_gga(T409, T410, T412)) → addCI_out_gga(one(T409), zero(T410), zero(T412))
U16_gga(T358, T359, T361, addCI_out_gga(T358, T359, T361)) → addCI_out_gga(zero(T358), one(T359), zero(T361))
U23_gga(T288, T289, T291, addCI_out_gga(T288, T289, T291)) → addcF_out_gga(T288, T289, T291)
U8_gga(T224, T225, T227, addcF_out_gga(T224, T225, T227)) → addzC_out_gga(one(T224), one(T225), zero(T227))
U29_gga(T211, T212, T214, addzC_out_gga(T211, T212, T214)) → addyE_out_gga(T211, T212, T214)
U7_gga(T185, T186, T188, addyE_out_gga(T185, T186, T188)) → addzC_out_gga(one(T185), zero(T186), one(T188))
U26_gga(T166, T167, T169, addzC_out_gga(T166, T167, T169)) → addxD_out_gga(T166, T167, T169)
U6_gga(T140, T141, T143, addxD_out_gga(T140, T141, T143)) → addzC_out_gga(zero(T140), one(T141), one(T143))
U5_gga(T121, T122, T124, addzC_out_gga(T121, T122, T124)) → addzC_out_gga(zero(T121), zero(T122), zero(T124))
U34_gga(T102, T103, T105, addzC_out_gga(T102, T103, T105)) → addJ_out_gga(zero(T102), zero(T103), zero(T105))
addJ_in_gga(zero(T438), one(T439), one(T441)) → U35_gga(T438, T439, T441, addxD_in_gga(T438, T439, T441))
U35_gga(T438, T439, T441, addxD_out_gga(T438, T439, T441)) → addJ_out_gga(zero(T438), one(T439), one(T441))
addJ_in_gga(one(T455), zero(T456), one(T458)) → U36_gga(T455, T456, T458, addyE_in_gga(T455, T456, T458))
U36_gga(T455, T456, T458, addyE_out_gga(T455, T456, T458)) → addJ_out_gga(one(T455), zero(T456), one(T458))
addJ_in_gga(one(T466), one(T467), zero(T469)) → U37_gga(T466, T467, T469, addcF_in_gga(T466, T467, T469))
U37_gga(T466, T467, T469, addcF_out_gga(T466, T467, T469)) → addJ_out_gga(one(T466), one(T467), zero(T469))

The argument filtering Pi contains the following mapping:
addJ_in_gga(x1, x2, x3)  =  addJ_in_gga(x1, x2)
b  =  b
addJ_out_gga(x1, x2, x3)  =  addJ_out_gga(x1, x2, x3)
zero(x1)  =  zero(x1)
U30_gga(x1, x2)  =  U30_gga(x1, x2)
binaryZA_in_g(x1)  =  binaryZA_in_g(x1)
U1_g(x1, x2)  =  U1_g(x1, x2)
one(x1)  =  one(x1)
U2_g(x1, x2)  =  U2_g(x1, x2)
binaryB_in_g(x1)  =  binaryB_in_g(x1)
binaryB_out_g(x1)  =  binaryB_out_g(x1)
U3_g(x1, x2)  =  U3_g(x1, x2)
binaryZA_out_g(x1)  =  binaryZA_out_g(x1)
U4_g(x1, x2)  =  U4_g(x1, x2)
U31_gga(x1, x2)  =  U31_gga(x1, x2)
U32_gga(x1, x2)  =  U32_gga(x1, x2)
U33_gga(x1, x2)  =  U33_gga(x1, x2)
U34_gga(x1, x2, x3, x4)  =  U34_gga(x1, x2, x4)
addzC_in_gga(x1, x2, x3)  =  addzC_in_gga(x1, x2)
U5_gga(x1, x2, x3, x4)  =  U5_gga(x1, x2, x4)
U6_gga(x1, x2, x3, x4)  =  U6_gga(x1, x2, x4)
addxD_in_gga(x1, x2, x3)  =  addxD_in_gga(x1, x2)
U24_gga(x1, x2)  =  U24_gga(x1, x2)
addxD_out_gga(x1, x2, x3)  =  addxD_out_gga(x1, x2, x3)
U25_gga(x1, x2)  =  U25_gga(x1, x2)
U26_gga(x1, x2, x3, x4)  =  U26_gga(x1, x2, x4)
U7_gga(x1, x2, x3, x4)  =  U7_gga(x1, x2, x4)
addyE_in_gga(x1, x2, x3)  =  addyE_in_gga(x1, x2)
U27_gga(x1, x2)  =  U27_gga(x1, x2)
addyE_out_gga(x1, x2, x3)  =  addyE_out_gga(x1, x2, x3)
U28_gga(x1, x2)  =  U28_gga(x1, x2)
U29_gga(x1, x2, x3, x4)  =  U29_gga(x1, x2, x4)
U8_gga(x1, x2, x3, x4)  =  U8_gga(x1, x2, x4)
addcF_in_gga(x1, x2, x3)  =  addcF_in_gga(x1, x2)
addcF_out_gga(x1, x2, x3)  =  addcF_out_gga(x1, x2, x3)
U21_gga(x1, x2, x3)  =  U21_gga(x1, x3)
succZH_in_ga(x1, x2)  =  succZH_in_ga(x1)
U11_ga(x1, x2)  =  U11_ga(x1, x2)
succZH_out_ga(x1, x2)  =  succZH_out_ga(x1, x2)
U12_ga(x1, x2, x3)  =  U12_ga(x1, x3)
succG_in_ga(x1, x2)  =  succG_in_ga(x1)
succG_out_ga(x1, x2)  =  succG_out_ga(x1, x2)
U9_ga(x1, x2)  =  U9_ga(x1, x2)
U10_ga(x1, x2, x3)  =  U10_ga(x1, x3)
U22_gga(x1, x2, x3)  =  U22_gga(x1, x3)
U23_gga(x1, x2, x3, x4)  =  U23_gga(x1, x2, x4)
addCI_in_gga(x1, x2, x3)  =  addCI_in_gga(x1, x2)
U13_gga(x1, x2, x3, x4)  =  U13_gga(x1, x2, x4)
addzC_out_gga(x1, x2, x3)  =  addzC_out_gga(x1, x2, x3)
addCI_out_gga(x1, x2, x3)  =  addCI_out_gga(x1, x2, x3)
U14_gga(x1, x2)  =  U14_gga(x1, x2)
U15_gga(x1, x2, x3)  =  U15_gga(x1, x3)
U16_gga(x1, x2, x3, x4)  =  U16_gga(x1, x2, x4)
U17_gga(x1, x2)  =  U17_gga(x1, x2)
U18_gga(x1, x2, x3)  =  U18_gga(x1, x3)
U19_gga(x1, x2, x3, x4)  =  U19_gga(x1, x2, x4)
U20_gga(x1, x2, x3, x4)  =  U20_gga(x1, x2, x4)
U35_gga(x1, x2, x3, x4)  =  U35_gga(x1, x2, x4)
U36_gga(x1, x2, x3, x4)  =  U36_gga(x1, x2, x4)
U37_gga(x1, x2, x3, x4)  =  U37_gga(x1, x2, x4)
ADDZC_IN_GGA(x1, x2, x3)  =  ADDZC_IN_GGA(x1, x2)
ADDXD_IN_GGA(x1, x2, x3)  =  ADDXD_IN_GGA(x1, x2)
ADDYE_IN_GGA(x1, x2, x3)  =  ADDYE_IN_GGA(x1, x2)
ADDCF_IN_GGA(x1, x2, x3)  =  ADDCF_IN_GGA(x1, x2)
ADDCI_IN_GGA(x1, x2, x3)  =  ADDCI_IN_GGA(x1, x2)

We have to consider all (P,R,Pi)-chains

(24) UsableRulesProof (EQUIVALENT transformation)

For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R.

(25) Obligation:

Pi DP problem:
The TRS P consists of the following rules:

ADDXD_IN_GGA(T166, T167, T169) → ADDZC_IN_GGA(T166, T167, T169)
ADDZC_IN_GGA(zero(T121), zero(T122), zero(T124)) → ADDZC_IN_GGA(T121, T122, T124)
ADDZC_IN_GGA(zero(T140), one(T141), one(T143)) → ADDXD_IN_GGA(T140, T141, T143)
ADDZC_IN_GGA(one(T185), zero(T186), one(T188)) → ADDYE_IN_GGA(T185, T186, T188)
ADDYE_IN_GGA(T211, T212, T214) → ADDZC_IN_GGA(T211, T212, T214)
ADDZC_IN_GGA(one(T224), one(T225), zero(T227)) → ADDCF_IN_GGA(T224, T225, T227)
ADDCF_IN_GGA(T288, T289, T291) → ADDCI_IN_GGA(T288, T289, T291)
ADDCI_IN_GGA(zero(T307), zero(T308), one(T310)) → ADDZC_IN_GGA(T307, T308, T310)
ADDCI_IN_GGA(zero(T358), one(T359), zero(T361)) → ADDCI_IN_GGA(T358, T359, T361)
ADDCI_IN_GGA(one(T409), zero(T410), zero(T412)) → ADDCI_IN_GGA(T409, T410, T412)
ADDCI_IN_GGA(one(T422), one(T423), one(T425)) → ADDCF_IN_GGA(T422, T423, T425)

R is empty.
The argument filtering Pi contains the following mapping:
zero(x1)  =  zero(x1)
one(x1)  =  one(x1)
ADDZC_IN_GGA(x1, x2, x3)  =  ADDZC_IN_GGA(x1, x2)
ADDXD_IN_GGA(x1, x2, x3)  =  ADDXD_IN_GGA(x1, x2)
ADDYE_IN_GGA(x1, x2, x3)  =  ADDYE_IN_GGA(x1, x2)
ADDCF_IN_GGA(x1, x2, x3)  =  ADDCF_IN_GGA(x1, x2)
ADDCI_IN_GGA(x1, x2, x3)  =  ADDCI_IN_GGA(x1, x2)

We have to consider all (P,R,Pi)-chains

(26) PiDPToQDPProof (SOUND transformation)

Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi.

(27) Obligation:

Q DP problem:
The TRS P consists of the following rules:

ADDXD_IN_GGA(T166, T167) → ADDZC_IN_GGA(T166, T167)
ADDZC_IN_GGA(zero(T121), zero(T122)) → ADDZC_IN_GGA(T121, T122)
ADDZC_IN_GGA(zero(T140), one(T141)) → ADDXD_IN_GGA(T140, T141)
ADDZC_IN_GGA(one(T185), zero(T186)) → ADDYE_IN_GGA(T185, T186)
ADDYE_IN_GGA(T211, T212) → ADDZC_IN_GGA(T211, T212)
ADDZC_IN_GGA(one(T224), one(T225)) → ADDCF_IN_GGA(T224, T225)
ADDCF_IN_GGA(T288, T289) → ADDCI_IN_GGA(T288, T289)
ADDCI_IN_GGA(zero(T307), zero(T308)) → ADDZC_IN_GGA(T307, T308)
ADDCI_IN_GGA(zero(T358), one(T359)) → ADDCI_IN_GGA(T358, T359)
ADDCI_IN_GGA(one(T409), zero(T410)) → ADDCI_IN_GGA(T409, T410)
ADDCI_IN_GGA(one(T422), one(T423)) → ADDCF_IN_GGA(T422, T423)

R is empty.
Q is empty.
We have to consider all (P,Q,R)-chains.

(28) QDPSizeChangeProof (EQUIVALENT transformation)

By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:

  • ADDZC_IN_GGA(zero(T140), one(T141)) → ADDXD_IN_GGA(T140, T141)
    The graph contains the following edges 1 > 1, 2 > 2

  • ADDZC_IN_GGA(zero(T121), zero(T122)) → ADDZC_IN_GGA(T121, T122)
    The graph contains the following edges 1 > 1, 2 > 2

  • ADDXD_IN_GGA(T166, T167) → ADDZC_IN_GGA(T166, T167)
    The graph contains the following edges 1 >= 1, 2 >= 2

  • ADDYE_IN_GGA(T211, T212) → ADDZC_IN_GGA(T211, T212)
    The graph contains the following edges 1 >= 1, 2 >= 2

  • ADDCI_IN_GGA(zero(T307), zero(T308)) → ADDZC_IN_GGA(T307, T308)
    The graph contains the following edges 1 > 1, 2 > 2

  • ADDZC_IN_GGA(one(T185), zero(T186)) → ADDYE_IN_GGA(T185, T186)
    The graph contains the following edges 1 > 1, 2 > 2

  • ADDZC_IN_GGA(one(T224), one(T225)) → ADDCF_IN_GGA(T224, T225)
    The graph contains the following edges 1 > 1, 2 > 2

  • ADDCF_IN_GGA(T288, T289) → ADDCI_IN_GGA(T288, T289)
    The graph contains the following edges 1 >= 1, 2 >= 2

  • ADDCI_IN_GGA(one(T422), one(T423)) → ADDCF_IN_GGA(T422, T423)
    The graph contains the following edges 1 > 1, 2 > 2

  • ADDCI_IN_GGA(zero(T358), one(T359)) → ADDCI_IN_GGA(T358, T359)
    The graph contains the following edges 1 > 1, 2 > 2

  • ADDCI_IN_GGA(one(T409), zero(T410)) → ADDCI_IN_GGA(T409, T410)
    The graph contains the following edges 1 > 1, 2 > 2

(29) YES